У меня ошибка (java .lang.NoSuchMethodError) при развертывании файла войны с весенней загрузкой на автономном сервере JBoss. Пожалуйста, помогите мне в этом, поскольку я пытаюсь выполнить поиск в Интернете, но все еще не могу выяснить это, я добавил ниже сообщение об ошибке, а затем мой pom. xml, а также мой файл свойств и java main java class. Это mvc приложение.
Ошибка
"{\"WFLYCTL0080: Failed services\" => {\"jboss.deployment.unit.\\\"SpringBoot.war\\\".undertow-deployment\" => \"java.lang.NoSuchMethodError: 'org.apache.tomcat.util.digester.Digester org.apache.tomcat.util.descriptor.DigesterFactory.newDigester(boolean, boolean, org.apache.tomcat.util.digester.RuleSet, boolean)'
Caused by: java.lang.NoSuchMethodError: 'org.apache.tomcat.util.digester.Digester org.apache.tomcat.util.descriptor.DigesterFactory.newDigester(boolean, boolean, org.apache.tomcat.util.digester.RuleSet, boolean)'\"}}"
Ниже мой pom. xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.5.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<groupId>com.mvc</groupId>
<artifactId>TestProj</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>TestProj</name>
<description>MVC Maven Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-rest</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- [START] -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- [END] -->
<!-- [START] -->
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jasper</artifactId>
<version>9.0.29</version>
</dependency>
<!-- [END]-->
<!-- start -->
<!-- <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope> </dependency> -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<!-- end -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
<finalName>SpringBoot</finalName>
</build>
</project>
Ниже мое приложение. Свойства
server.servlet.contextPath=/*
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
Я получил изменения также в java
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
@SpringBootApplication
@ComponentScan(basePackages = { "com.mvc.controller"} )
public class TestProjApplication {
public static void main(String[] args) {
SpringApplication.run(TestProjApplication.class, args);
}
}
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
public class ServletInitializer extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(TestProjApplication.class);
}
}