<resources>
<!-- 控制资源文件的拷贝 -->
<resource>
<directory>src/main/resources</directory>
<targetPath>${project.build.directory}</targetPath>
</resource>
</resources>
<plugins>
<!-- 设置源文件编码方式 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<defaultLibBundleDir>lib</defaultLibBundleDir>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<!-- 打包jar文件时,配置manifest文件,加入lib包的jar依赖 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>com.wddsi.codeFactory.main.StartMain</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>
pom 插入
运行 maven install
得到 项目.jar
用压缩软件打开 项目.jar
打开 META-INF\MANIFEST.MF
Class-Path:(必有一个空格) 这里是引入的第三方类 lib\引入的.jar 多个采用空格分割
Main-Class:(必有一个空格) 这里是运行jar的入口类,类中存在main
项目目录
项目.jar
lib\引入的jar
资源\资源文件
jar 不能使用 class.getResource("/");
返回出来的路径为 项目.jar!路径
会导致找不到资源文件
System.getProperty("user.dir");
可以获取到jar的位置
编辑一个vbs
Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c Java -jar 项目.jar
或者编辑一个bat
Java -jar 项目.jar
可以看到控制台输出