Maven 2 是否有可能挑选出一个特定的目标并运行到maven阶段?
更新为(希望)澄清:如果一个目标被定义为在给定阶段运行,是否可以运行单个目标而不运行所有阶段。换句话说,是否可以运行Maven 2 是否有可能挑选出一个特定的目标并运行到maven阶段?,maven-2,ant,Maven 2,Ant,更新为(希望)澄清:如果一个目标被定义为在给定阶段运行,是否可以运行单个目标而不运行所有阶段。换句话说,是否可以运行antrun:run目标(定义为以下安装阶段的一部分),而不获取依赖项、生成资源、编译、测试、打包等 我正在使用antrun插件在包阶段创建一个zip文件,并在安装阶段删除和复制一些文件。我了解如何运行单个maven插件目标,例如:mvn antrun:run。但是,是否有一种方法可以运行特定执行的目标?类似于mvn-antrun:run:executionid,或者mvn-pha
antrun:run
目标(定义为以下安装阶段的一部分),而不获取依赖项、生成资源、编译、测试、打包等
我正在使用antrun插件在包
阶段创建一个zip文件,并在安装
阶段删除和复制一些文件。我了解如何运行单个maven插件目标,例如:mvn antrun:run
。但是,是否有一种方法可以运行特定执行的目标?类似于mvn-antrun:run:executionid
,或者mvn-phase:antrun:run
基本上,如果我能告诉maven除了在部署阶段内运行下面定义的ant任务之外,什么都不做,我会很高兴。等待maven完成所有阶段只是为了检查部署阶段中的ant任务是否正常工作,这有点乏味
<executions>
<!-- create zip file -->
<execution>
<id>create-zip</id>
<phase>package</phase>
<configuration>
<tasks>
...create zip...
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
<!-- do some other stuff -->
<execution>
<id>copy-files</id>
<phase>install</phase>
<configuration>
<tasks>
...delete some files, copy some files ...
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
创建拉链
包裹
…创建zip。。。
跑
复制文件
安装
…删除一些文件,复制一些文件。。。
跑
对于ex:
当您使用maven运行jboss时,您看不到jboss控制台输出,但我需要它来显示,所以我编写了一个java文件,在它更改时读入server.log(服务器控制台输出),以显示更改,因此jboss控制台似乎实际显示了(有点不正常,但工作正常)。所以我要回答你的问题,在预集成测试期间,我执行了一个java目标,启动了我的java程序。下面是如何使用execute插件的:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.1</version>
<executions>
<execution>
<id>console-start</id>
<phase>pre-integration-test</phase>
<goals>
<goal>java</goal>
</goals>
</execution>
</executions>
<configuration>
<mainClass>org.eclipse.console.Main</mainClass>
</configuration>
</plugin>
org.codehaus.mojo
execmaven插件
1.1
控制台启动
预集成测试
JAVA
org.eclipse.console.Main
您只需运行安装并在预集成测试期间执行,但是如果您只想执行java之类的东西,请使用execute插件。对不起,如果答案不合适,我没有耐心详细阅读你的问题,我的工作时间已经结束了。。干杯试试
换句话说,在不获取依赖项、生成资源、编译、测试、打包等情况下运行antrun:run目标(定义为下面安装阶段的一部分)是否可能
不,不是。虽然可以配置插件(在
元素下有
部分)并在命令行上调用,但不能调用特定的executionid(因此也不能调用特定于
的
)
在您的情况下,唯一的解决方案是在配置文件中声明antrun插件,比如说my profile
,以复制配置的以下部分来配置此配置文件中的插件:
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.3</version>
<configuration>
<tasks>
... delete some files, copy some files ...
</tasks>
</configuration>
</plugin>
mvn antrun:run -Pmy-profile