`
阅读更多

maven 如何执行ant呢?maven如何执行本地命令呢?

使用maven-antrun-plugin 插件

详情请参阅:http://maven.apache.org/plugins/maven-antrun-plugin/run-mojo.html

示例:

pom.xml内容:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.kunlunsoft</groupId>
	<artifactId>check_same_content</artifactId>
	<version>0.02-SNAPSHOT</version>

	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.11</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>com.kunlunsoft</groupId>
			<artifactId>io0007-find_progess</artifactId>
			<version>0.0.6-SNAPSHOT</version>
		</dependency>
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>servlet-api</artifactId>
			<version>2.5</version>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<!-- 生成可执行的 jar 包 <plugin> <artifactId>maven-assembly-plugin</artifactId> 
				<configuration> <appendAssemblyId>false</appendAssemblyId> <descriptorRefs> 
				<descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> <archive> 
				<manifest> <mainClass>com.hw.main.CheckSameApp</mainClass> </manifest> </archive> 
				</configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> 
				<goals> <goal>assembly</goal> </goals> </execution> </executions> </plugin> -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<version>2.2.1</version>
				<configuration>
					<!-- <finalName>${project.build.name}</finalName> -->
					<attach>true</attach>
					<encoding>${project.build.sourceEncoding}</encoding>
				</configuration>
				<executions>
					<execution>
						<!-- 在 compile 阶段执行 maven-source-plugin 插件的 jar -->
						<phase>compile</phase>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<!-- 设置编码 -->
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>1.6</source>
					<target>1.6</target>
					<encoding>UTF-8</encoding>
				</configuration>

			</plugin>

			<!-- 使用SureFire-Plugin进行单元测试及selenium集成测试 -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>2.15</version>
				<configuration>
					<skip>true</skip>
				</configuration>
				<executions>
					<execution>
						<id>run-test</id>
						<!-- 绑定到默认生命周期 -->
						<phase>test</phase>
						<goals>
							<goal>test</goal>
						</goals>
						<configuration>
							<skip>false</skip>
							<includes>
								<include>**/UnitTest.java</include>
							</includes>
						</configuration>
					</execution>
					<execution>
						<!-- 绑定到默认生命周期 -->
						<phase>integration-test</phase>
						<goals>
							<goal>test</goal>
						</goals>
						<configuration>
							<skip>false</skip>
							<includes>
								<include>**/IntegrationTest.java</include>
							</includes>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-antrun-plugin</artifactId>
				<version>1.7</version>

				<configuration>
					<target name="abc">
						<!-- <exec dir="." executable="Q:/work/apache-tomcat-7.0.41/bin/startup.bat" 
							failonerror="true"> </exec> -->
						<echo message="os is abc" />
					</target>

				</configuration>

				<executions>
					<execution>
						<id>fds</id>
						<phase>clean</phase>
						<configuration>
							<tasks>
								<!-- <exec dir="${tomcat.home}/bin" executable="startup.bat" failonerror="true"> 
									</exec> -->
								<echo message="os is b2" />
							</tasks>

						</configuration>
						<goals>
							<goal>run</goal>
						</goals>
					</execution>
				</executions>
				<dependencies>
					<dependency>
						<groupId>ant</groupId>
						<artifactId>ant-junit</artifactId>
						<version>1.6.2</version>
					</dependency>
				</dependencies>
			</plugin>

		</plugins>
	</build>

</project>

 

打开命令行,执行mvn clean,运行结果(部分):

[INFO] Executing tasks

 

main:

     [echo] os is b2

[INFO] Executed tasks

 

执行mvn antrun:run,运行结果:

[INFO] Executing tasks

 

abc:

     [echo] os is abc

 

 

1
2
分享到:
评论

相关推荐

    Maven权威指南 很精典的学习教程,比ANT更好用

    Maven是Ant的另一种选择么? 1.7. 比较Maven和Ant 1.8. 总结 2. 安装和运行Maven 2.1. 验证你的Java安装 2.2. 下载Maven 2.3. 安装Maven 2.3.1. 在Mac OSX上安装Maven 2.3.2. 在Microsoft Windows上安装...

    ant-assembly-maven-plugin:用于将Ant用作组装工具的Maven插件

    介绍该插件以受启发的本身的方式在Maven中提供了高级Ant集成。 AntBuildMojo提供了用于处理Maven工件图的高级Ant任务。 它带有用于构建“分发”的各种Ant任务:过滤库,解析工件,将结果附加到MavenReact器以用于...

    ANT打包可执行JAR包脚本

    非maven项目中的ANT打包可执行JAR包脚本,包括配置文件、第三方jar打包

    zookeeper服务器依赖配置,包含了zookeeper的bin包,和相关依赖maven3.8.6,ant1.10.12

    zookeeper服务器依赖配置,包含了zookeeper的bin包,和相关依赖maven3.8.6,ant1.10.12,解压后,配置环境变量,点击apachezookeeper-3.8.0-bin里的相关执行文件即可运行

    maven入门到精通

    同时它采用了现在流行的插件体系架构,只保留最小的核心,其余功能都通过插件的形式提供,所以 maven 下载很小( 1.1M ),在执行 maven 任务时,才会自动下载需要的插件。 这个基本原理与 Pear ――PHP扩展与...

    maven window下安装包

    第1章:Maven概述/1.3 与其它构建相比/1.3.2 Ant 第2章:Maven的安装/2.1 Window下的安装 第2章:Maven的安装/2.2 Linux下的安装 第3章:Maven使用入门/3.1 编写POM 第3章:Maven使用入门/3.2 编写源代码 第3章:...

    Maven2 的新特性.7z

    现在想来,当时从 Ant 移情 Maven 的想法其实很朴素,就是因为 Maven 可以以网站的形式展现与项目相关的信息,如开发人员列表、各种 Report。这种方式为项目的构建带来了极大的方便,尤其是 Report 的。试想对于产生...

    maven 2.1.0

    1. 在项目根目录下,写一个ant文件,把常用命令列出来 &lt;?xml version="1.0" encoding="GB2312"?&gt; &lt;project name="smice-card_2_0 项目构建过程" ...2. 使用eclipse的ant view,可以看到并执行上面的命令

    [maven] 常用插件解析.docx

    maven-archetype-plugin 能让用户生成项目骨架,Maven 初学者最开始执行的 Maven 命令可能就是 mvn archetype:generate,这实际上就是让 maven-archetype-plugin 生成一个很简单的项目骨架,帮助开发者快速上手。...

    maven镜像工具的安装包

    make→Ant→maven→Gradle ②构建 【1】概念:以“java源文件”、“框架配置文件”、‘JSP’、“HTMl”、“图片”等资源为“原材料”,去生产一个可以运行的项目的过程 编译 部署 搭建 【2】编译:java源文件...

    xsltproc64.rar

    在jenkins+jmeter+maven+ant的测试架构中,xsltproc插件用于将执行jmeter后生成的jtl格式结果报告转换成易读的html格式报告。

    selenium+java+Maven-TestNG+reportNG框架代码

    #框架介绍 selenium+java+... • 使用TestNG作为项目运行框架,方便执行测试用例,生成测试报告 • 使用Xml作为用例管理工具,方便编写测试用例,维护测试脚本 • 使用Ant作为Java的build打包工具,方便项目代码打包

    tomcat6、7、8、9, maven3.5

    Apache Tomcat上9.x的是发展的当前焦点,它建立在Tomcat 8.0.x和实现了目前草案的Servlet 4.0规范,也将执行 JSP 2.4?,EL 3.1?,目前对WebSocket的1.2? 和JASPIC 1.1 规范工作的一次更新上这些规范为Java EE 8除...

    Apache Maven项目构建工具-其他

    9、基于模型的构建:Maven能够将任何数量的项目构建为预定义的输出类型,例如JAR,WAR或基于有关该项目的元数据的分发,而在大多数情况下无需执行任何脚本。10、项目信息的一致站点:使用与构建过程相同的元数据,...

    JMeterAMQP.jar

    这是自己本机编译的JMeterAMQP.jar,...4. 在源码根目录执行 ant 5. 当名称成功执行完成后,从target/dist目录中可获取到JMeterAMQP.jar 6. 将amqp-client-3.4.4.jar和JMeterAMQP.jar放置到jmeter安装目录中的lib/ext中

    javaee项目源码-MAVEN:ApacheMaven(通常称为Maven)是一种用于管理和自动化Java软件项目(尤其是JavaEE)生产

    目的是从源头生产软件,优化为此目的执行的任务,并确保正确的生产订单。 可以将其与Unix下的make系统或与Ant工具进行比较。 Maven使用称为项目对象模型(Project Object Model,POM)的范例来描述软件项目,其对...

    Ant Design Demo 学习

     下载GIT并且安装,安装好后用管理员模式执行git-bash.exe   VSCODE导入项目: 1.2.后端安装 需要本机支持Maven,没有需要安装配置好。然后开始下载脚手架:  STS载入项目: 1.3.数据库安装 导入一个示例...

    xml执行java源码-WeTest:WeTest是处理API接口测试的轻量级自动化测试框架,java语言实现,采用JUnit4开源框架,支持

    WeTest是处理API接口测试的轻量级自动化测试框架,java语言实现,拓展JUnit4开源框架,支持Ant/Maven执行方式。 工具特点: 1.支持suite,根据JUnit4测试类名正则匹配,聚合相同模块的用例,运行单个聚合类即可实现...

    java汽车租赁源码-aws-flow-maven-eclipse-samples:使用Maven和Eclipse的AWSFlowFramew

    Ant 来构建和测试。 包括以下示例: HelloWorld – 此示例包含一个非常简单的工作流,它调用一个活动来将 hello world 打印到控制台。 它展示了 AWS Flow Framework 的基本用法,包括定义合同、活动的实施和工作流...

Global site tag (gtag.js) - Google Analytics