问题描述
对我来说,没有META-INF文件是一件很重要的事情,因为我正在使用Swagger UI,并将META-INF添加到资源处理程序中。
Pom文件:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.2.RELEASE</version>
<relativePath/>
</parent>
<packaging>war</packaging>
<properties>
<java.version>1.8</java.version>
...
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<archive>
<manifest>
<mainClass>${maven-war-plugin.mainClass}</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven-compiler-plugin.version}</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
<encoding>UTF-8</encoding>
<annotationProcessorPaths>
<annotationProcessorPath>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>${lombok.version}</version>
</annotationProcessorPath>
<annotationProcessorPath>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-jpamodelgen</artifactId>
<version>${hibernate.version}</version>
</annotationProcessorPath>
</annotationProcessorPaths>
</configuration>
</plugin>
</plugins>
</build>
这是我的src/main/resources
文件夹:
resources
--application.properties
--logback--spring.xml
运行mvn clean install
时,这就是我从目标文件夹中获得的所有信息:
target
--classes
--project-1.0-SNAPSHOT
--generated-sources
--generated-test-sources
--maven-archiver
--maven-status
--surefire-reports
--test-classes
--project-1.0-SNAPSHOT.war
--project-1.0-SNAPSHOT.war.original
我对于为什么没有生成清单文件感到非常困惑。我在--project-1.0-SNAPSHOT
内检入目标,然后看到2个目录META-INF和WEB-INF(除了其他生成的内容)。 WEB-INF包含所有类,库和视图。 META-INF绝对是空的。
我检查了application.properties
文件,但没有发现任何改变资源路径的属性。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)