idea springboot 打包运行的几个问题

1,no main manifest attribute

  • 出现原因:
    正常情况下,java打包成jar包需要在MANIFEST.MF中指定Main-Class项以便运行java -jar XXX.jar时找到对应的主类。因为-jar的含义就是后面跟的jar包是有main class可独立运行,所以需要在打包成jar包时指定这个类。
  • 解决方式
    在相应的POM文件中加入如下配置
<build> 
        <plugins> 
            <plugin>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-maven-pluginartifactId>
                
                <configuration>
                    
                    <mainClass>com.kismet.p2p.APPConfigmainClass>
                configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackagegoal>
                        goals>
                    execution>
                executions>
            plugin>
        plugins>
    build>

2,class path resource [xxx.properties] cannot be opened because it does not exist

  • 出现原因:
    问题很明显就是没有该配置文件,可问题来了明明我的resources下面有该配置文件啊怎么就读取不到,idea默认不会打包配置文件,问题就出在mvn打包时没有将resources下面的配置文件打包到jar包里面
  • 解决方式:
    在需要打包的POM文件中加入如下配置,就能将对应的配置文件打包到jar中
    <build>
            <resources>
                <resource>
                    
                    <directory>src/main/resourcesdirectory>
                resource>
            resources>
        build>

重新打包,运行java -jar xxx.jar 即可

你可能感兴趣的:(idea springboot 打包运行的几个问题)