从命令行编译java

时间:2011-08-04 11:31:01

标签: java command-line compiler-errors

我正在尝试从命令行编译应用程序

程序在eclipse中编译并运行正常,但是当我转到命令行并使用javac编译我的java文件时,我得到23个错误,其中大部分都是找不到符号,箭头指向。在包名中。

有没有人对我需要采取哪些不同的做法有任何想法?

谢谢

2 个答案:

答案 0 :(得分:4)

您的类路径设置不正确。在.classpath文件中查看Eclipse项目。在那里你会发现很多classpathentry元素。您需要为命令行编译复制它。

要手动执行此操作,必须先将CLASSPATH环境变量设置为包含类定义的目录(或jar文件)列表。

您还可以使用名为ant的构建工具为您自动执行此操作。

答案 1 :(得分:0)

我建议不要将类路径设置为环境变量,因为它过于干扰(所有的java程序都会看到它)。

用于编译依赖于Log4j的Java应用程序的命令行可能如下所示:

javac -cp C:\dev\mvn\repo\log4j\log4j\1.2.16\log4j-1.2.16.jar AppenderTester.java

如果您有多个类路径条目,则需要用分号分隔它们。

为了便于使用,您可以创建启动脚本。这可以是一个简单的批处理脚本或更精细的ant脚本(需要安装ant)。

这只是被称为'classpath hell'的冰山一角。

编辑:您还可以查看Eclipse功能'export runnable JAR',它将您的应用程序及其所有依赖项打包在一个JAR文件中。