maven添加插件依赖
maven管理文件pom.xml中plugins
添加
<properties><maven.build.timestamp.format>yyyyMMddHHmmss</maven.build.timestamp.format>
</properties>
<!--生成jar时的指定springboot的启动类-->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<!--打成exe包-->
<plugin>
<groupId>com.akathist.maven.plugins.launch4j</groupId>
<artifactId>launch4j-maven-plugin</artifactId>
<executions>
<execution>
<id>l4j-clui</id>
<phase>package</phase>
<goals>
<goal>launch4j</goal>
</goals>
<configuration>
<headerType>console</headerType>
<outfile>target/road_monitor_admin.exe</outfile>
<jar>target/road_monitor_admin.jar</jar>
<errTitle>road_monitor_admin</errTitle>
<!--<classPath>-->
<!--<mainClass>com.vkl.RoadMonitorAdminApplication</mainClass>-->
<!--<addDependencies>true</addDependencies>-->
<!--<preCp>anything</preCp>-->
<!--</classPath>-->
<classPath>
<mainClass>org.springframework.boot.loader.JarLauncher</mainClass>
<addDependencies>true</addDependencies>
<preCp>anything</preCp>
</classPath>
<jre>
<minVersion>1.8.0</minVersion>
</jre>
<versionInfo>
<fileVersion>1.2.3.4</fileVersion>
<txtFileVersion>txt file version?</txtFileVersion>
<fileDescription>a description</fileDescription>
<copyright>my copyright</copyright>
<productVersion>4.3.2.1</productVersion>
<txtProductVersion>txt product version</txtProductVersion>
<productName>E-N-C-C</productName>
<internalName>road_monitor_admin</internalName>
<originalFilename>original.exe</originalFilename>
</versionInfo>
</configuration>
</execution>
</executions>
</plugin>
通过外部配置控制实际的配置情况
读取配置顺序
file:/config/
file:/
classpath:/config/
classpath:/
解决exe启动时的报错
<!--解决启动jar时错误-->
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-core</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1.1</version>
</dependency>