从命令行构建Eclipse Java项目有没有办法从命令行编译基于Eclipse的Java项目?我正在尝试自动化我的构建(使用FinalBuilder而不是ant),而且我既不是Java也不是Eclipse专家。我可以通过直接的java命令行选项找出如何做到这一点,但Eclipse项目感觉就像浪费了很多精力。如果无法通过命令行编译Eclipse项目,有没有办法从Eclipse中生成所需的java命令行?或者是否有一些我可以找到的文件来找到它在幕后进行的编译步骤?伙计们,我正在寻找一个不包含蚂蚁的答案。让我重新讨论原始问题.......有没有办法从命令行构建Eclipse项目?我不认为这是一个不合理的问题,因为我可以为visual studio做这样的事情:devenv.exe /build "Debug|Any CPU" "C:\Projects\MyProject\source\MyProject.sln"
3 回答
噜噜哒
TA贡献1784条经验 获得超7个赞
要完成André的答案,ant解决方案可能类似于Emacs,JDEE,Ant和Eclipse Java Compiler中描述的解决方案,如:
<javac srcdir="${src}" destdir="${build.dir}/classes"> <compilerarg compiler="org.eclipse.jdt.core.JDTCompilerAdapter" line="-warn:+unused -Xemacs"/> <classpath refid="compile.classpath" /> </javac>
compilerarg元素还允许您将其他命令行参数传递给eclipse编译器。
你可以在这里找到一个完整的ant脚本示例,它将在命令行中调用:
java -cp C:/eclipse-SDK-3.4-win32/eclipse/plugins/org.eclipse.equinox.launcher_1.0.100.v20080509-1800.jar org.eclipse.core.launcher.Main -data "C:\Documents and Settings\Administrator\workspace" -application org.eclipse.ant.core.antRunner -buildfile build.xml -verbose
但是所有这些都涉及蚂蚁,这不是基思所追求的。
有关批量编译,请参阅编译Java代码,尤其是“ 使用批处理编译器 ”部分
批处理编译器类位于JDT Core插件中。该类的名称是org.eclipse.jdt.compiler.batch.BatchCompiler。它被打包到plugins / org.eclipse.jdt.core_3.4.0..jar中。从3.2开始,它也可以单独下载。该文件的名称是ecj.jar。
从3.3开始,这个jar还包含对jsr199(编译器API)的支持和对jsr269(注释处理)的支持。为了使用注释处理支持,需要1.6 VM。
运行批处理编译器从命令行将给出
java -jar org.eclipse.jdt.core_3.4.0<qualifier>.jar -classpath rt.jar A.java
要么:
java -jar ecj.jar -classpath rt.jar A.java
所有Java编译选项也在该部分中详述。
与Visual Studio命令行编译功能的不同之处在于Eclipse似乎不直接在命令行参数中读取其.project和.classpath。您必须在各种命令行选项中报告.project和.classpath中包含的所有信息,以便实现完全相同的编译结果。
那么,简短的回答是:“是的,Eclipse就是这样。” ;)
添加回答
举报
0/150
提交
取消