Java 404找不到Tomcat的春季开机大战
我有Spring boot应用程序。这适用于嵌入式服务器。我可以使用Postman来测试API 现在我想在Tomcat 8上部署它,我用Java 404找不到Tomcat的春季开机大战,java,spring,spring-boot,tomcat,Java,Spring,Spring Boot,Tomcat,我有Spring boot应用程序。这适用于嵌入式服务器。我可以使用Postman来测试API 现在我想在Tomcat 8上部署它,我用maven安装创建root.war文件 并将其放到Tomcat/webapps/ 我运行tomcat时没有任何错误。但当我使用与邮递员相同的url时,它会给我404NotFound 我同时使用的url示例(嵌入式和tomcat):localhost:8080/auth/registration 我试图在application.properties中设置serve
maven安装创建root.war文件
并将其放到Tomcat/webapps/
我运行tomcat时没有任何错误。但当我使用与邮递员相同的url时,它会给我404NotFound
我同时使用的url示例(嵌入式和tomcat):localhost:8080/auth/registration
我试图在application.properties中设置server.context路径
,但没有结果
我认为问题在于项目的配置
这是我的pom.xml
parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.3.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId>
<version>0.7.0</version>
</dependency>
<dependency>
<groupId>org.apache.tika</groupId>
<artifactId>tika-core</artifactId>
<version>1.14</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.8.0</version>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.8.0</version>
</dependency>
<!--Dependency for singleton-->
<dependency>
<groupId>javax.ejb</groupId>
<artifactId>javax.ejb-api</artifactId>
<version>3.2</version>
</dependency>
<!--PostgreSQL driver-->
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
</dependency>
<!--SEND MAIL-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-servlet-api</artifactId>
<version>7.0.21</version>
<scope>provided</scope>
</dependency>
<!--Amazon-->
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk</artifactId>
<version>1.11.331</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.5</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<executable>true</executable>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
<finalName>ROOT</finalName>
</build>
<repositories>
<repository>
<id>spring-releases</id>
<url>https://repo.spring.io/libs-release</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>spring-releases</id>
<url>https://repo.spring.io/libs-release</url>
</pluginRepository>
</pluginRepositories>
将这些添加到pom.xml中
4.0.0
com.muna.manas
核心java
0.1.0-SNAPSHOT
罐子
这里最重要的方面是类型——要创建可执行jar,请仔细检查配置是否使用jar类型。
org.apache.maven.plugins
maven jar插件
真的
自由基/
org.baeldung.executable.ExecutableMavenJar
将这些添加到pom.xml中
4.0.0
com.muna.manas
核心java
0.1.0-SNAPSHOT
罐子
这里最重要的方面是类型——要创建可执行jar,请仔细检查配置是否使用jar类型。
org.apache.maven.plugins
maven jar插件
真的
自由基/
org.baeldung.executable.ExecutableMavenJar
第1步:
将以下依赖项添加/更新到pom.xml
(提供的范围为
),以告知Spring Boot不要使用其嵌入式Tomcat
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
参考:和步骤1:
将以下依赖项添加/更新到pom.xml
(提供的范围为
),以告知Spring Boot不要使用其嵌入式Tomcat
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
参考:和而不是“localhost:8080/auth/registration”中的auth检查localhost:8080/root/registration它不起作用。无论如何,war是什么“根”名称?您不需要在“localhost:8080/auth/registration”中设置/roots而不是auth。请使用localhost:8080/root/registration检查它不起作用。不管怎样,您不需要设置的war是什么“根”名称/rootmain类是Spring boot starter类?当我运行JAR(java-JAR name.JAR)时,我的原因是:java.lang.ClassNotFoundException:javax.xml.bind.ValidationExceptionmain类是Spring boot starter类?当我运行JAR(java-JAR name.JAR)时我已导致:java.lang.ClassNotFoundException:javax.xml.bind.ValidationException
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<properties>
<packaging>war</packaging>
</properties>
@SpringBootApplication
public class Application extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(Application.class);
}
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
}
}