Eclipse导入新的tomcat时提示错误:Unknown version of Tomcat was specified

博主秋招提前批已拿百度、字节跳动、拼多多、顺丰等公司的offer,可加微信:pcwl_Java 一起交流秋招面试经验,可获得博主的秋招简历和复习笔记。

最近打开以前写的一个项目时,开始总是报HttpServlet的错误,一看就想到了了没有在工程里导入Tomcat,但是打开:

Build Path->Add Libraries,发现是有Tomcat的,于是就去Window -->Preferences-->Server-->Runtime Environment下发现因为我把Eclipse里配的Tomcat移动了位置,当然找不到了。但是当我再次解压新的Tomcat,导入Eclipse时,提示了如下图所示的错误:

这个错误是路径错误造成的,不要看到apache-tomcat-的路径就选中了,可能真正的在下一级目录,比如我的就是。。。

图1  错误提示

 

图2  Tomcat路径
C:\jdk-21.0.7\bin\java.exe -XX:TieredStopAtLevel=1 -Dspring.output.ansi.enabled=always -Dcom.sun.management.jmxremote -Dspring.jmx.enabled=true -Dspring.liveBeansView.mbeanDomain -Dspring.application.admin.enabled=true "-Dmanagement.endpoints.jmx.exposure.include=*" "-javaagent:D:\IntelliJ IDEA 2024.3.5\lib\idea_rt.jar=57003" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath C:\Users\86133\IdeaProjects\toolSys\target\classes;C:\Users\86133\.m2\repository\org\springframework\boot\spring-boot-starter-data-jpa\3.5.4\spring-boot-starter-data-jpa-3.5.4.jar;C:\Users\86133\.m2\repository\org\springframework\boot\spring-boot-starter\3.5.4\spring-boot-starter-3.5.4.jar;C:\Users\86133\.m2\repository\org\springframework\boot\spring-boot\3.5.4\spring-boot-3.5.4.jar;C:\Users\86133\.m2\repository\org\springframework\boot\spring-boot-autoconfigure\3.5.4\spring-boot-autoconfigure-3.5.4.jar;C:\Users\86133\.m2\repository\org\springframework\boot\spring-boot-starter-logging\3.5.4\spring-boot-starter-logging-3.5.4.jar;C:\Users\86133\.m2\repository\ch\qos\logback\logback-classic\1.5.18\logback-classic-1.5.18.jar;C:\Users\86133\.m2\repository\ch\qos\logback\logback-core\1.5.18\logback-core-1.5.18.jar;C:\Users\86133\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.24.3\log4j-to-slf4j-2.24.3.jar;C:\Users\86133\.m2\repository\org\apache\logging\log4j\log4j-api\2.24.3\log4j-api-2.24.3.jar;C:\Users\86133\.m2\repository\org\slf4j\jul-to-slf4j\2.0.17\jul-to-slf4j-2.0.17.jar;C:\Users\86133\.m2\repository\jakarta\annotation\jakarta.annotation-api\2.1.1\jakarta.annotation-api-2.1.1.jar;C:\Users\86133\.m2\repository\org\yaml\snakeyaml\2.4\snakeyaml-2.4.jar;C:\Users\86133\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\3.5.4\spring-boot-starter-jdbc-3.5.4.jar;C:\Users\86133\.m2\repository\com\zaxxer\HikariCP\6.3.1\HikariCP-6.3.1.jar;C:\Users\86133\.m2\repository\org\springframework\spring-jdbc\6.2.9\spring-jdbc-6.2.9.jar;C:\Users\86133\.m2\repository\org\hibernate\orm\hibernate-core\6.6.22.Final\hibernate-core-6.6.22.Final.jar;C:\Users\86133\.m2\repository\jakarta\persistence\jakarta.persistence-api\3.1.0\jakarta.persistence-api-3.1.0.jar;C:\Users\86133\.m2\repository\jakarta\transaction\jakarta.transaction-api\2.0.1\jakarta.transaction-api-2.0.1.jar;C:\Users\86133\.m2\repository\org\jboss\logging\jboss-logging\3.6.1.Final\jboss-logging-3.6.1.Final.jar;C:\Users\86133\.m2\repository\org\hibernate\common\hibernate-commons-annotations\7.0.3.Final\hibernate-commons-annotations-7.0.3.Final.jar;C:\Users\86133\.m2\repository\io\smallrye\jandex\3.2.0\jandex-3.2.0.jar;C:\Users\86133\.m2\repository\com\fasterxml\classmate\1.7.0\classmate-1.7.0.jar;C:\Users\86133\.m2\repository\net\bytebuddy\byte-buddy\1.17.6\byte-buddy-1.17.6.jar;C:\Users\86133\.m2\repository\org\glassfish\jaxb\jaxb-runtime\4.0.5\jaxb-runtime-4.0.5.jar;C:\Users\86133\.m2\repository\org\glassfish\jaxb\jaxb-core\4.0.5\jaxb-core-4.0.5.jar;C:\Users\86133\.m2\repository\org\eclipse\angus\angus-activation\2.0.2\angus-activation-2.0.2.jar;C:\Users\86133\.m2\repository\org\glassfish\jaxb\txw2\4.0.5\txw2-4.0.5.jar;C:\Users\86133\.m2\repository\com\sun\istack\istack-commons-runtime\4.1.2\istack-commons-runtime-4.1.2.jar;C:\Users\86133\.m2\repository\jakarta\inject\jakarta.inject-api\2.0.1\jakarta.inject-api-2.0.1.jar;C:\Users\86133\.m2\repository\org\antlr\antlr4-runtime\4.13.0\antlr4-runtime-4.13.0.jar;C:\Users\86133\.m2\repository\org\springframework\data\spring-data-jpa\3.5.2\spring-data-jpa-3.5.2.jar;C:\Users\86133\.m2\repository\org\springframework\data\spring-data-commons\3.5.2\spring-data-commons-3.5.2.jar;C:\Users\86133\.m2\repository\org\springframework\spring-orm\6.2.9\spring-orm-6.2.9.jar;C:\Users\86133\.m2\repository\org\springframework\spring-context\6.2.9\spring-context-6.2.9.jar;C:\Users\86133\.m2\repository\org\springframework\spring-tx\6.2.9\spring-tx-6.2.9.jar;C:\Users\86133\.m2\repository\org\springframework\spring-beans\6.2.9\spring-beans-6.2.9.jar;C:\Users\86133\.m2\repository\org\slf4j\slf4j-api\2.0.17\slf4j-api-2.0.17.jar;C:\Users\86133\.m2\repository\org\springframework\spring-aspects\6.2.9\spring-aspects-6.2.9.jar;C:\Users\86133\.m2\repository\org\aspectj\aspectjweaver\1.9.24\aspectjweaver-1.9.24.jar;C:\Users\86133\.m2\repository\org\springframework\boot\spring-boot-starter-security\3.5.4\spring-boot-starter-security-3.5.4.jar;C:\Users\86133\.m2\repository\org\springframework\spring-aop\6.2.9\spring-aop-6.2.9.jar;C:\Users\86133\.m2\repository\org\springframework\security\spring-security-config\6.5.2\spring-security-config-6.5.2.jar;C:\Users\86133\.m2\repository\org\springframework\security\spring-security-web\6.5.2\spring-security-web-6.5.2.jar;C:\Users\86133\.m2\repository\org\springframework\spring-expression\6.2.9\spring-expression-6.2.9.jar;C:\Users\86133\.m2\repository\org\springframework\boot\spring-boot-starter-web\3.5.4\spring-boot-starter-web-3.5.4.jar;C:\Users\86133\.m2\repository\org\springframework\boot\spring-boot-starter-json\3.5.4\spring-boot-starter-json-3.5.4.jar;C:\Users\86133\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8\2.19.2\jackson-datatype-jdk8-2.19.2.jar;C:\Users\86133\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310\2.19.2\jackson-datatype-jsr310-2.19.2.jar;C:\Users\86133\.m2\repository\com\fasterxml\jackson\module\jackson-module-parameter-names\2.19.2\jackson-module-parameter-names-2.19.2.jar;C:\Users\86133\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\3.5.4\spring-boot-starter-tomcat-3.5.4.jar;C:\Users\86133\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\10.1.43\tomcat-embed-core-10.1.43.jar;C:\Users\86133\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\10.1.43\tomcat-embed-el-10.1.43.jar;C:\Users\86133\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\10.1.43\tomcat-embed-websocket-10.1.43.jar;C:\Users\86133\.m2\repository\org\springframework\spring-web\6.2.9\spring-web-6.2.9.jar;C:\Users\86133\.m2\repository\io\micrometer\micrometer-observation\1.15.2\micrometer-observation-1.15.2.jar;C:\Users\86133\.m2\repository\io\micrometer\micrometer-commons\1.15.2\micrometer-commons-1.15.2.jar;C:\Users\86133\.m2\repository\org\springframework\spring-webmvc\6.2.9\spring-webmvc-6.2.9.jar;C:\Users\86133\.m2\repository\org\mybatis\spring\boot\mybatis-spring-boot-starter\3.0.3\mybatis-spring-boot-starter-3.0.3.jar;C:\Users\86133\.m2\repository\org\mybatis\spring\boot\mybatis-spring-boot-autoconfigure\3.0.3\mybatis-spring-boot-autoconfigure-3.0.3.jar;C:\Users\86133\.m2\repository\org\mybatis\mybatis\3.5.14\mybatis-3.5.14.jar;C:\Users\86133\.m2\repository\org\mybatis\mybatis-spring\3.0.3\mybatis-spring-3.0.3.jar;C:\Users\86133\.m2\repository\com\mysql\mysql-connector-j\8.2.0\mysql-connector-j-8.2.0.jar;C:\Users\86133\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.3\jjwt-api-0.12.3.jar;C:\Users\86133\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.3\jjwt-impl-0.12.3.jar;C:\Users\86133\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.3\jjwt-jackson-0.12.3.jar;C:\Users\86133\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.19.2\jackson-databind-2.19.2.jar;C:\Users\86133\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.19.2\jackson-annotations-2.19.2.jar;C:\Users\86133\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.19.2\jackson-core-2.19.2.jar;C:\Users\86133\.m2\repository\org\projectlombok\lombok\1.18.38\lombok-1.18.38.jar;C:\Users\86133\.m2\repository\jakarta\xml\bind\jakarta.xml.bind-api\4.0.2\jakarta.xml.bind-api-4.0.2.jar;C:\Users\86133\.m2\repository\jakarta\activation\jakarta.activation-api\2.1.3\jakarta.activation-api-2.1.3.jar;C:\Users\86133\.m2\repository\org\springframework\spring-core\6.2.9\spring-core-6.2.9.jar;C:\Users\86133\.m2\repository\org\springframework\spring-jcl\6.2.9\spring-jcl-6.2.9.jar;C:\Users\86133\.m2\repository\org\springframework\security\spring-security-core\6.5.2\spring-security-core-6.5.2.jar;C:\Users\86133\.m2\repository\org\springframework\security\spring-security-crypto\6.5.2\spring-security-crypto-6.5.2.jar com.org.example.toolsys.ToolSysApplication . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v3.5.4) 2025-08-03T21:39:20.668+08:00 INFO 25068 --- [tools] [ main] c.o.example.toolsys.ToolSysApplication : Starting ToolSysApplication using Java 21.0.7 with PID 25068 (C:\Users\86133\IdeaProjects\toolSys\target\classes started by 86133 in C:\Users\86133\IdeaProjects\toolSys) 2025-08-03T21:39:20.670+08:00 INFO 25068 --- [tools] [ main] c.o.example.toolsys.ToolSysApplication : No active profile set, falling back to 1 default profile: "default" 2025-08-03T21:39:21.170+08:00 DEBUG 25068 --- [tools] [ main] o.m.s.b.a.MybatisAutoConfiguration : Searching for mappers annotated with @Mapper 2025-08-03T21:39:21.171+08:00 DEBUG 25068 --- [tools] [ main] o.m.s.b.a.MybatisAutoConfiguration : Using auto-configuration base package 'com.org.example.toolsys' 2025-08-03T21:39:21.220+08:00 INFO 25068 --- [tools] [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode. 2025-08-03T21:39:21.233+08:00 INFO 25068 --- [tools] [ main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 6 ms. Found 0 JPA repository interfaces. 2025-08-03T21:39:21.331+08:00 DEBUG 25068 --- [tools] [ main] o.m.s.mapper.ClassPathMapperScanner : Identified candidate component class: file [C:\Users\86133\IdeaProjects\toolSys\target\classes\com\org\example\toolsys\mapper\AdminMapper.class] 2025-08-03T21:39:21.332+08:00 DEBUG 25068 --- [tools] [ main] o.m.s.mapper.ClassPathMapperScanner : Identified candidate component class: file [C:\Users\86133\IdeaProjects\toolSys\target\classes\com\org\example\toolsys\mapper\UserMapper.class] 2025-08-03T21:39:21.333+08:00 DEBUG 25068 --- [tools] [ main] o.m.s.mapper.ClassPathMapperScanner : Creating MapperFactoryBean with name 'adminMapper' and 'com.org.example.toolsys.mapper.AdminMapper' mapperInterface 2025-08-03T21:39:21.334+08:00 DEBUG 25068 --- [tools] [ main] o.m.s.mapper.ClassPathMapperScanner : Creating MapperFactoryBean with name 'userMapper' and 'com.org.example.toolsys.mapper.UserMapper' mapperInterface 2025-08-03T21:39:21.662+08:00 INFO 25068 --- [tools] [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port 8089 (http) 2025-08-03T21:39:21.674+08:00 INFO 25068 --- [tools] [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat] 2025-08-03T21:39:21.674+08:00 INFO 25068 --- [tools] [ main] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.43] 2025-08-03T21:39:21.724+08:00 INFO 25068 --- [tools] [ main] o.a.c.c.C.[Tomcat].[localhost].[/api] : Initializing Spring embedded WebApplicationContext 2025-08-03T21:39:21.725+08:00 INFO 25068 --- [tools] [ main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1016 ms 2025-08-03T21:39:21.852+08:00 INFO 25068 --- [tools] [ main] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default] 2025-08-03T21:39:21.891+08:00 INFO 25068 --- [tools] [ main] org.hibernate.Version : HHH000412: Hibernate ORM core version 6.6.22.Final 2025-08-03T21:39:21.919+08:00 INFO 25068 --- [tools] [ main] o.h.c.internal.RegionFactoryInitiator : HHH000026: Second-level cache disabled 2025-08-03T21:39:22.141+08:00 INFO 25068 --- [tools] [ main] o.s.o.j.p.SpringPersistenceUnitInfo : No LoadTimeWeaver setup: ignoring JPA class transformer 2025-08-03T21:39:22.162+08:00 INFO 25068 --- [tools] [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... 2025-08-03T21:39:22.400+08:00 INFO 25068 --- [tools] [ main] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@48ae9e8b 2025-08-03T21:39:22.402+08:00 INFO 25068 --- [tools] [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed. 2025-08-03T21:39:22.469+08:00 INFO 25068 --- [tools] [ main] org.hibernate.orm.connections.pooling : HHH10001005: Database info: Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-1)'] Database driver: undefined/unknown Database version: 8.0.27 Autocommit mode: undefined/unknown Isolation level: undefined/unknown Minimum pool size: undefined/unknown Maximum pool size: undefined/unknown 2025-08-03T21:39:22.749+08:00 INFO 25068 --- [tools] [ main] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) 2025-08-03T21:39:22.753+08:00 INFO 25068 --- [tools] [ main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default' 2025-08-03T21:39:22.808+08:00 DEBUG 25068 --- [tools] [ main] o.mybatis.spring.SqlSessionFactoryBean : Property 'mapperLocations' was not specified. 2025-08-03T21:39:22.878+08:00 INFO 25068 --- [tools] [ main] r$InitializeUserDetailsManagerConfigurer : Global AuthenticationManager configured with UserDetailsService bean with name inMemoryUserDetailsManager 2025-08-03T21:39:23.142+08:00 DEBUG 25068 --- [tools] [ main] o.m.s.b.a.MybatisAutoConfiguration : Not found configuration for registering mapper bean using @MapperScan, MapperFactoryBean and MapperScannerConfigurer. 2025-08-03T21:39:23.280+08:00 INFO 25068 --- [tools] [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port 8089 (http) with context path '/api' 2025-08-03T21:39:23.286+08:00 INFO 25068 --- [tools] [ main] c.o.example.toolsys.ToolSysApplication : Started ToolSysApplication in 2.98 seconds (process running for 3.469) 2025-08-03T21:42:21.728+08:00 INFO 25068 --- [tools] [nio-8089-exec-5] o.a.c.c.C.[Tomcat].[localhost].[/api] : Initializing Spring DispatcherServlet 'dispatcherServlet' 2025-08-03T21:42:21.728+08:00 INFO 25068 --- [tools] [nio-8089-exec-5] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet' 2025-08-03T21:42:21.730+08:00 INFO 25068 --- [tools] [nio-8089-exec-5] o.s.web.servlet.DispatcherServlet : Completed initialization in 1 ms 访问 localhost 的请求遭到拒绝 您未获授权,无法查看此网页。 HTTP ERROR 403
最新发布
08-04
C:\Users\admin\.jdks\corretto-18.0.2\bin\java.exe -XX:TieredStopAtLevel=1 -Dspring.output.ansi.enabled=always -Dcom.sun.management.jmxremote -Dspring.jmx.enabled=true -Dspring.liveBeansView.mbeanDomain -Dspring.application.admin.enabled=true -javaagent:D:\soft\IntelliJIDEA2022.2.5\lib\idea_rt.jar=51628:D:\soft\IntelliJIDEA2022.2.5\bin -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath D:\javacode\user\target\classes;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\boot\spring-boot-starter\3.5.3\spring-boot-starter-3.5.3.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\boot\spring-boot\3.5.3\spring-boot-3.5.3.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\spring-context\6.2.8\spring-context-6.2.8.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\boot\spring-boot-autoconfigure\3.5.3\spring-boot-autoconfigure-3.5.3.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\boot\spring-boot-starter-logging\3.5.3\spring-boot-starter-logging-3.5.3.jar;D:\soft\apache-maven-3.8.8\mvn_resp\ch\qos\logback\logback-classic\1.5.18\logback-classic-1.5.18.jar;D:\soft\apache-maven-3.8.8\mvn_resp\ch\qos\logback\logback-core\1.5.18\logback-core-1.5.18.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\apache\logging\log4j\log4j-to-slf4j\2.24.3\log4j-to-slf4j-2.24.3.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\apache\logging\log4j\log4j-api\2.24.3\log4j-api-2.24.3.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\slf4j\jul-to-slf4j\2.0.17\jul-to-slf4j-2.0.17.jar;D:\soft\apache-maven-3.8.8\mvn_resp\jakarta\annotation\jakarta.annotation-api\2.1.1\jakarta.annotation-api-2.1.1.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\spring-core\6.2.8\spring-core-6.2.8.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\spring-jcl\6.2.8\spring-jcl-6.2.8.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\yaml\snakeyaml\2.4\snakeyaml-2.4.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\boot\spring-boot-starter-web\3.5.3\spring-boot-starter-web-3.5.3.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\boot\spring-boot-starter-json\3.5.3\spring-boot-starter-json-3.5.3.jar;D:\soft\apache-maven-3.8.8\mvn_resp\com\fasterxml\jackson\core\jackson-databind\2.19.1\jackson-databind-2.19.1.jar;D:\soft\apache-maven-3.8.8\mvn_resp\com\fasterxml\jackson\core\jackson-annotations\2.19.1\jackson-annotations-2.19.1.jar;D:\soft\apache-maven-3.8.8\mvn_resp\com\fasterxml\jackson\core\jackson-core\2.19.1\jackson-core-2.19.1.jar;D:\soft\apache-maven-3.8.8\mvn_resp\com\fasterxml\jackson\datatype\jackson-datatype-jdk8\2.19.1\jackson-datatype-jdk8-2.19.1.jar;D:\soft\apache-maven-3.8.8\mvn_resp\com\fasterxml\jackson\datatype\jackson-datatype-jsr310\2.19.1\jackson-datatype-jsr310-2.19.1.jar;D:\soft\apache-maven-3.8.8\mvn_resp\com\fasterxml\jackson\module\jackson-module-parameter-names\2.19.1\jackson-module-parameter-names-2.19.1.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\boot\spring-boot-starter-tomcat\3.5.3\spring-boot-starter-tomcat-3.5.3.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\apache\tomcat\embed\tomcat-embed-core\10.1.42\tomcat-embed-core-10.1.42.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\apache\tomcat\embed\tomcat-embed-el\10.1.42\tomcat-embed-el-10.1.42.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\apache\tomcat\embed\tomcat-embed-websocket\10.1.42\tomcat-embed-websocket-10.1.42.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\spring-web\6.2.8\spring-web-6.2.8.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\spring-beans\6.2.8\spring-beans-6.2.8.jar;D:\soft\apache-maven-3.8.8\mvn_resp\io\micrometer\micrometer-observation\1.15.1\micrometer-observation-1.15.1.jar;D:\soft\apache-maven-3.8.8\mvn_resp\io\micrometer\micrometer-commons\1.15.1\micrometer-commons-1.15.1.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\spring-webmvc\6.2.8\spring-webmvc-6.2.8.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\spring-aop\6.2.8\spring-aop-6.2.8.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\spring-expression\6.2.8\spring-expression-6.2.8.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\slf4j\slf4j-api\2.0.17\slf4j-api-2.0.17.jar;D:\soft\apache-maven-3.8.8\mvn_resp\jakarta\xml\bind\jakarta.xml.bind-api\4.0.2\jakarta.xml.bind-api-4.0.2.jar;D:\soft\apache-maven-3.8.8\mvn_resp\jakarta\activation\jakarta.activation-api\2.1.3\jakarta.activation-api-2.1.3.jar;D:\soft\apache-maven-3.8.8\mvn_resp\net\bytebuddy\byte-buddy\1.17.6\byte-buddy-1.17.6.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\boot\spring-boot-starter-data-jpa\3.5.3\spring-boot-starter-data-jpa-3.5.3.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\boot\spring-boot-starter-jdbc\3.5.3\spring-boot-starter-jdbc-3.5.3.jar;D:\soft\apache-maven-3.8.8\mvn_resp\com\zaxxer\HikariCP\6.3.0\HikariCP-6.3.0.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\spring-jdbc\6.2.8\spring-jdbc-6.2.8.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\hibernate\orm\hibernate-core\6.6.18.Final\hibernate-core-6.6.18.Final.jar;D:\soft\apache-maven-3.8.8\mvn_resp\jakarta\persistence\jakarta.persistence-api\3.1.0\jakarta.persistence-api-3.1.0.jar;D:\soft\apache-maven-3.8.8\mvn_resp\jakarta\transaction\jakarta.transaction-api\2.0.1\jakarta.transaction-api-2.0.1.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\jboss\logging\jboss-logging\3.6.1.Final\jboss-logging-3.6.1.Final.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\hibernate\common\hibernate-commons-annotations\7.0.3.Final\hibernate-commons-annotations-7.0.3.Final.jar;D:\soft\apache-maven-3.8.8\mvn_resp\io\smallrye\jandex\3.2.0\jandex-3.2.0.jar;D:\soft\apache-maven-3.8.8\mvn_resp\com\fasterxml\classmate\1.7.0\classmate-1.7.0.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\glassfish\jaxb\jaxb-runtime\4.0.5\jaxb-runtime-4.0.5.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\glassfish\jaxb\jaxb-core\4.0.5\jaxb-core-4.0.5.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\eclipse\angus\angus-activation\2.0.2\angus-activation-2.0.2.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\glassfish\jaxb\txw2\4.0.5\txw2-4.0.5.jar;D:\soft\apache-maven-3.8.8\mvn_resp\com\sun\istack\istack-commons-runtime\4.1.2\istack-commons-runtime-4.1.2.jar;D:\soft\apache-maven-3.8.8\mvn_resp\jakarta\inject\jakarta.inject-api\2.0.1\jakarta.inject-api-2.0.1.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\antlr\antlr4-runtime\4.13.0\antlr4-runtime-4.13.0.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\data\spring-data-jpa\3.5.1\spring-data-jpa-3.5.1.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\data\spring-data-commons\3.5.1\spring-data-commons-3.5.1.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\spring-orm\6.2.8\spring-orm-6.2.8.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\spring-tx\6.2.8\spring-tx-6.2.8.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\springframework\spring-aspects\6.2.8\spring-aspects-6.2.8.jar;D:\soft\apache-maven-3.8.8\mvn_resp\org\aspectj\aspectjweaver\1.9.24\aspectjweaver-1.9.24.jar;D:\soft\apache-maven-3.8.8\mvn_resp\mysql\mysql-connector-java\8.0.28\mysql-connector-java-8.0.28.jar;D:\soft\apache-maven-3.8.8\mvn_resp\com\google\protobuf\protobuf-java\3.11.4\protobuf-java-3.11.4.jar com.example.user.UserApplication . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v3.5.3) 2025-07-06T20:45:06.853+08:00 INFO 11980 --- [user] [ main] com.example.user.UserApplication : Starting UserApplication using Java 18.0.2 with PID 11980 (D:\javacode\user\target\classes started by admin in D:\javacode\user) 2025-07-06T20:45:06.858+08:00 INFO 11980 --- [user] [ main] com.example.user.UserApplication : No active profile set, falling back to 1 default profile: "default" 2025-07-06T20:45:07.934+08:00 INFO 11980 --- [user] [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode. 2025-07-06T20:45:07.966+08:00 INFO 11980 --- [user] [ main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 18 ms. Found 0 JPA repository interfaces. 2025-07-06T20:45:08.675+08:00 INFO 11980 --- [user] [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port 8080 (http) 2025-07-06T20:45:08.701+08:00 INFO 11980 --- [user] [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat] 2025-07-06T20:45:08.701+08:00 INFO 11980 --- [user] [ main] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.42] 2025-07-06T20:45:08.781+08:00 INFO 11980 --- [user] [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext 2025-07-06T20:45:08.782+08:00 INFO 11980 --- [user] [ main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1837 ms 2025-07-06T20:45:09.112+08:00 INFO 11980 --- [user] [ main] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default] 2025-07-06T20:45:09.202+08:00 INFO 11980 --- [user] [ main] org.hibernate.Version : HHH000412: Hibernate ORM core version 6.6.18.Final 2025-07-06T20:45:09.259+08:00 INFO 11980 --- [user] [ main] o.h.c.internal.RegionFactoryInitiator : HHH000026: Second-level cache disabled 2025-07-06T20:45:09.744+08:00 INFO 11980 --- [user] [ main] o.s.o.j.p.SpringPersistenceUnitInfo : No LoadTimeWeaver setup: ignoring JPA class transformer 2025-07-06T20:45:09.799+08:00 INFO 11980 --- [user] [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... 2025-07-06T20:45:10.051+08:00 INFO 11980 --- [user] [ main] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@4fbb1144 2025-07-06T20:45:10.055+08:00 INFO 11980 --- [user] [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed. 2025-07-06T20:45:10.093+08:00 WARN 11980 --- [user] [ main] org.hibernate.orm.deprecation : HHH90000025: MySQL8Dialect does not need to be specified explicitly using 'hibernate.dialect' (remove the property setting and it will be selected by default) 2025-07-06T20:45:10.095+08:00 WARN 11980 --- [user] [ main] org.hibernate.orm.deprecation : HHH90000026: MySQL8Dialect has been deprecated; use org.hibernate.dialect.MySQLDialect instead 2025-07-06T20:45:10.131+08:00 INFO 11980 --- [user] [ main] org.hibernate.orm.connections.pooling : HHH10001005: Database info: Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-1)'] Database driver: undefined/unknown Database version: 8.0 Autocommit mode: undefined/unknown Isolation level: undefined/unknown Minimum pool size: undefined/unknown Maximum pool size: undefined/unknown 2025-07-06T20:45:10.794+08:00 INFO 11980 --- [user] [ main] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) 2025-07-06T20:45:10.803+08:00 INFO 11980 --- [user] [ main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default' 2025-07-06T20:45:10.862+08:00 WARN 11980 --- [user] [ main] JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning 2025-07-06T20:45:11.532+08:00 INFO 11980 --- [user] [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port 8080 (http) with context path '/' 2025-07-06T20:45:11.545+08:00 INFO 11980 --- [user] [ main] com.example.user.UserApplication : Started UserApplication in 5.52 seconds (process running for 6.562) 2025-07-06T20:45:55.912+08:00 INFO 11980 --- [user] [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring DispatcherServlet 'dispatcherServlet' 2025-07-06T20:45:55.913+08:00 INFO 11980 --- [user] [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet' 2025-07-06T20:45:55.916+08:00 INFO 11980 --- [user] [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : Completed initialization in 3 ms Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing this as a fallback. Sun Jul 06 20:46:26 CST 2025 There was an unexpected error (type=Not Found, status=404).
07-07
### 解决 Tomcat 11 和 JDK 21 运行出现的 `WARNING: Unknown module: java.rmi specified to --add-opens` 问题 当使用 Tomcat 11 和 JDK 21 ,可能会遇到以下警告信息: ``` WARNING: Unknown module: java.rmi specified to --add-opens ``` 此警告表明在 JVM 启动参数中指定了无效的模块 `java.rmi`。实际上,`java.rmi` 包属于 `java.base` 模块的一部分[^3]。因此,直接指定 `java.rmi` 是无效的,需要调整启动参数以正确打开模块访问权限。 #### 正确配置 JVM 参数 为了消除上述警告,需要将 `--add-opens` 参数的目标模块更改为 `java.base`,并明确指定需要打开的包路径。例如: ```bash --add-opens java.base/java.rmi=ALL-UNNAMED ``` 在 Tomcat 的启动脚本中,可以通过修改 `setclasspath.sh` 或 `catalina.sh` 文件来添加上述参数。以下是具体操作方法: #### 修改 Tomcat 启动脚本 1. 打开 Tomcat 安装目录下的 `bin/setclasspath.sh` 文件。 2. 添加以下内容以设置正确的 JVM 参数: ```bash JAVA_OPTS="$JAVA_OPTS --add-opens java.base/java.rmi=ALL-UNNAMED" ``` 3. 如果使用 Windows 系统,则需要编辑 `setclasspath.bat` 文件,并添加类似的配置: ```bat set JAVA_OPTS=%JAVA_OPTS% --add-opens java.base/java.rmi=ALL-UNNAMED ``` 4. 确保环境变量 `JAVA_HOME` 和 `JRE_HOME` 指向正确的 JDK 路径。如果存在冗余的 JRE 配置,可以尝试删除 `JRE_HOME` 变量[^1]。 #### 示例:验证配置是否生效 完成上述修改后,重启 Tomcat 并验证警告是否消失。可以运行以下命令检查 JVM 参数是否正确加载: ```bash ps -ef | grep java ``` 在输出结果中,应能看到类似以下内容: ```bash --add-opens java.base/java.rmi=ALL-UNNAMED ``` #### 其他可能的错误处理 如果仍然遇到 `NoClassDefFoundError` 或 `ClassNotFoundException` 错误,可能是因为类加载器无法找到某些依赖项。确保以下条件满足: 1. `JAVA_HOME` 指向正确的 JDK 21 安装路径[^2]。 2. Tomcat 的 `lib` 目录中包含所有必要的库文件。 3. 如果使用 Eclipse 或其他 IDE,确保项目的运行配置中已正确设置 JDK 和 JVM 参数[^3]。 #### 注意事项 尽管通过 `--add-opens` 参数可以解决反射访问问题,但长期来看,建议尽量减少对内部 API 的依赖。如果可能,迁移到公开 API 或者使用模块化系统的推荐实践。 --- ###
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值