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就是这样。” ;)
添加回答
举报