从Maven运行Java应用程序的简单方法?

Svi*_*ish 5 java maven

如果我理解正确,我需要输入这个来从maven运行我的项目:

mvn compile
mvn exec:java -Dexec.mainClass="com.foo.bar.blah.Main"
Run Code Online (Sandbox Code Playgroud)

有没有办法让我更简单?最好我想做

mvn run
Run Code Online (Sandbox Code Playgroud)

Vin*_*har 6

1)创建一个名为"run"的新配置文件(或您选择的其他名称)

  <profiles>
    <profile>
      <id>run</id>
Run Code Online (Sandbox Code Playgroud)

2)将配置文件的默认目标设置为"验证"(或者您可以选择"安装",在编译后选择一个阶段将确保在运行该类之前自动编译代码)

 <profiles>
    <profile>
      <id>run</id>
      <build>
        <defaultGoal>verify</defaultGoal>
Run Code Online (Sandbox Code Playgroud)

3)将exec-maven-plugin添加到此配置文件(请参阅),但将其配置为在"验证"阶段运行.

   <execution>  
    <phase>test</phase>  
Run Code Online (Sandbox Code Playgroud)

4)您现在可以使用以下命令运行您的课程:

mvn -Prun
Run Code Online (Sandbox Code Playgroud)


Rid*_*del 5

多一点配置,少一点命令行参数;-)

使用相同的exec:java插件,您可以在pom.xml中配置您的任务,然后通过将您的目标映射到生命周期的运行步骤以更简单的方式执行它,如此示例所示.


Per*_*ega 0

可悲的是,没有`(据我所知)。如果您有一个 Web 应用程序,您可以使用Jetty插件来运行它:

mvn jetty:run

但对于独立应用程序,您需要 exec 插件。