我正在尝试在Eclipse中的已编译.class文件上运行“javac”工具。我打开外部工具配置,将其填充到filds:
位置: C:\Program Files\Java\jdk1.6.0_25\bin\javac.exe
工作目录: $ {workspace_loc:/Main/bin}
参数:吗?
我想问你我必须在参数字段中写什么,我是否要填写* Location *和工作目录:字段对吗?
最佳答案
在某些情况下,从Eclipse中启动javac编译器可能是非常有用的功能(例如,出于测试目的,将javac输出与Eclipse编译器的输出进行比较,使用特殊的javac编译器选项或的编译器重新编译单个类文件)其他JDK版本等)。除了使用ant之外,还有两种方便的方法可以将javac集成到Eclipse中:为javac设置“外部工具配置”,或者将javac添加到项目的Eclipse构建链中。
为javac设置“外部工具配置”
以下是设置javac编译器所需的步骤,以便可以在Eclipse内部使用它(准备使用的启动配置如下):
C:\Program Files (x86)\Java\jdk1.7.0_25\bin\javac.exe
)。 -classpath ${project_classpath}
)内,将javac的“-classpath”选项设置为项目的类路径。 -d ${project_loc}\bin
)。 ${selected_resource_loc}
或所选软件包的${selected_resource_loc}\*
)。配置的完整“参数”字段如下所示:-verbose -classpath ${project_classpath} -d ${project_loc}\bin ${selected_resource_loc}\*
除此之外,您可能希望在工具配置的“刷新”选项卡下为所选项目选择“完成时刷新资源”,并可能在“构建”选项卡下取消选择“启动前构建”。
我为javac创建了两个默认启动配置,您可以通过将它们放入项目文件夹中以“.launch”结尾的文件(例如“javac.launch”)中来重用它们。打开“外部工具配置”对话框后,Eclipse将自动检测这些配置文件。您很可能需要将javac的位置更改为您计算机上javac的位置。
文件“javac(详细文件).launch” -在单个选定文件上使用-verbose选项启动Javac:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<launchConfiguration type="org.eclipse.ui.externaltools.ProgramLaunchConfigurationType">
<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${project}"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LAUNCH_CONFIGURATION_BUILD_SCOPE" value="${none}"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="C:\Program Files (x86)\Java\jdk1.8.0\bin\javac.exe"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_TOOL_ARGUMENTS" value=" -verbose -classpath ${project_classpath} -d ${project_loc}\bin ${selected_resource_loc}"/>
</launchConfiguration>
文件“javac(dir).launch” -在选定的程序包上启动javac:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<launchConfiguration type="org.eclipse.ui.externaltools.ProgramLaunchConfigurationType">
<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${project}"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LAUNCH_CONFIGURATION_BUILD_SCOPE" value="${none}"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="C:\Program Files (x86)\Java\jdk1.8.0\bin\javac.exe"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_TOOL_ARGUMENTS" value="-classpath ${project_classpath} -d ${project_loc}\bin ${selected_resource_loc}\*"/>
</launchConfiguration>
将Javac添加到项目的Eclipse构建链中
将javac添加到构建链中,以便在完全或自动构建过程中自动执行它,方法与上述类似:
-d ${build_project}\bin
。然后,应使用“$ {resource_loc}”变量将要由javac编译的源文件/文件夹添加到参数列表的末尾。用于编译单个源文件的完整参数列表如下所示:-classpath ${project_classpath} -d ${build_project}\bin ${resource_loc:MyProject/src/myPackage/MyClass.java}
。要编译完整的软件包,您可以编写${resource_loc:MyProject/src/myPackage}\*
。 关于java - 如何从Eclipse运行Javac,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5987694/