我正在从 Eclipse 运行一个 Maven 项目,并且想要设置一个带有目标的运行配置compile exec:java
,这需要一个exec.mainClass
参数。因为我的项目中有不同的主类,所以我希望在运行时使用当前选择的资源的类和包名。作为参数值插入的正确运行变量是什么?
问问题
416 次
1 回答
1
我使用下面的配置来快速运行当前选中的类的main方法。我知道您只是询问了参数,但我会为其他访问者提供更详细的步骤,因为我在网上没有找到任何解决方案。
先决条件:m2e eclipse 插件,exec-maven-plugin
- 选择运行方式 > Maven 构建…
- 使用目标
exec:java
- 可选:提供配置文件名称
- 可选:选择调试输出
- 单击Add ...创建参数
- 姓名:
exec.mainClass
- 值:(
${java_type_name}
这提供了当前选定资源的完整 java 名称)
- 姓名:
现在,每当您使用此运行配置时,它都会将当前类作为参数并执行其 main 方法。该${java_type_name}
变量由 eclipse 提供,因此它也应该在不使用 m2e 的情况下以某种方式工作。
值得一提的是,当我在pom.xmlexec.mainClass
中提供目标和默认配置时,该参数对我不起作用。不确定这是否是错误,我做错了什么,或者根本不可能。我不得不删除任何目标,只包含插件而不在构建中配置它以使其工作:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
</plugin>
于 2012-10-25T09:06:47.580 回答