<build>
<finalName>brushwords</finalName>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
<plugins>
<!-- 忽略单元测试 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<!-- 打jar包插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.6 </version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<!-- 使用Maven库中的jar包 -->
<!-- <classpathPrefix>F:/Maven/Repository</classpathPrefix> <classpathLayoutType>repository</classpathLayoutType> -->
<classpathPrefix>lib/</classpathPrefix>
<!--含Main方法的类,程序执行入口-->
<mainClass>com.hpc.brushwords.App</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
<!-- 拷贝依赖的jar包到lib目录 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>
${project.build.directory}/lib
</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>

MANIFEST.MF文件,就可以看到Class-Path已经指定好了,Main-Class也已经指定好了
Manifest-Version: 1.0 Built-By: Administrator Build-Jdk: 1.7.0_80 Class-Path: lib/httpclient-4.3.6.jar lib/httpcore-4.3.3.jar lib/common s-logging-1.1.3.jar lib/commons-codec-1.6.jar lib/jsoup-1.8.2.jar lib /fastjson-1.2.5.jar lib/commons-dbcp-1.4.jar lib/commons-pool-1.5.4.j ar lib/h2-1.3.176.jar lib/log4j-1.2.17.jar lib/slf4j-api-1.7.7.jar li b/slf4j-log4j12-1.7.7.jar Created-By: Apache Maven 3.2.1 Main-Class: com.hpc.brushwords.App Archiver-Version: Plexus Archiver
本文详细介绍了如何使用Maven配置项目以忽略单元测试,并通过特定插件实现包含依赖的完整jar包打包过程。此外,还展示了如何在MANIFEST.MF文件中指定Class-Path和Main-Class,以便直接运行应用程序。
1198

被折叠的 条评论
为什么被折叠?



