我想问你在参数字段中必须写什么,我是否正确填写了位置和工作目录字段?
在某些情况下(例如用于测试目的,将javac输出与Eclipse编译器的输出进行比较,使用特殊的javac编译器选项或不同JDK版本的编译器重新编译单个类文件等),从Eclipse中启动javac编译器可能是一个非常有用的功能。除了使用Ant之外,将javac集成到Eclipse中有两种方便的方法:设置javac的“外部工具配置”或将javac添加到项目的Eclipse构建链中。
设置javac的“外部工具配置”
以下是设置javac编译器以便在Eclipse中使用的步骤(准备就绪的启动配置如下):
C:\Program Files (x86)\Java\jdk1.7.0_25\bin\javac.exe
)。-classpath ${project_classpath}
)。-d ${project_loc}\bin
)。${selected_resource_loc}
表示所选源文件,${selected_resource_loc}\*
表示所选包)。完整的“Arguments”字段可能看起来像这样:-verbose -classpath ${project_classpath} -d ${project_loc}\bin ${selected_resource_loc}\*
此外,您可能希望在工具配置的“刷新”选项卡下选择对所选项目进行“完成后刷新资源”,并可能取消选择“启动前构建”选项卡下的“构建”。
我创建了两个默认的javac启动配置,您可以通过将它们放入以“.launch”结尾的文件中(例如“javac.launch”)来重用它们,并将该文件放入您的项目文件夹中。一旦打开“外部工具配置”对话框,Eclipse将自动检测到这些配置文件。您很可能需要将javac的位置更改为计算机上javac的位置。
文件“javac(verbose file).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}\*
。-classpath "${project_classpath}" -d "${project_loc}\bin" "${selected_resource_loc}"
- user1803551${selected_resource_loc}\*
中不需要\*
。如果您只是选择文件并启动,则所选资源位置包括该文件,添加\*
将导致错误。也许您正在以不同的方式使用它? - user1803551在运行配置中的“主”选项卡中,您可以指定要运行的主类。
在运行配置中的“参数”选项卡中,您可以指定传递到主类的参数。只需在此处输入您的输入参数,每个参数都由空格分隔(例如arg1 arg2 arg3
将这3个参数传递给您的主类)。您还可以使用Eclipse预定义变量folder_prompt
、file_prompt
或string_prompt
来参数化参数(您可以使用参数选项卡内的“变量...”按钮来帮助您配置它们)。当您运行主类时,Eclipse将提示对话框让您输入参数。
在运行配置中的“JRE”选项卡中,您可以指定要执行主类的JRE。