如何消除eclipse中的4个错误和tomcat中的1个错误?

如何消除eclipse中的4个错误和tomcat中的1个错误?,eclipse,maven,struts2,tomcat9,Eclipse,Maven,Struts2,Tomcat9,我在Eclipse中遇到以下4个错误 /home/milind/eclipse-workspace/01struts2demo/target/m2e-wtp/web-resources/META-INF/MANIFEST.MF (No such file or directory) Cannot change version of project facet Dynamic Web Module to 4.0. Java compiler level does not match the ver

我在Eclipse中遇到以下4个错误

/home/milind/eclipse-workspace/01struts2demo/target/m2e-wtp/web-resources/META-INF/MANIFEST.MF (No such file or directory)
Cannot change version of project facet Dynamic Web Module to 4.0.
Java compiler level does not match the version of the installed Java project facet.
One or more constraints have not been satisfied.
当我运行以下命令时,项目构建良好,没有错误

~/eclipse-workspace/01struts2demo$ mvn clean package
输出是

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.google.inject.internal.cglib.core.$ReflectUtils$1 (file:/usr/share/maven/lib/guice.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)
WARNING: Please consider reporting this to the maintainers of com.google.inject.internal.cglib.core.$ReflectUtils$1
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
[INFO] Scanning for projects...
[INFO] 
[INFO] ------------------< com.milind.struts2:01struts2demo >------------------
[INFO] Building struts2demo Maven Webapp 0.0.1-SNAPSHOT
[INFO] --------------------------------[ war ]---------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ 01struts2demo ---
[INFO] Deleting /home/milind/eclipse-workspace/01struts2demo/target
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ 01struts2demo ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 0 resource
[INFO] 
[INFO] --- maven-compiler-plugin:3.5.1:compile (default-compile) @ 01struts2demo ---
[INFO] Changes detected - recompiling the module!
[WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent!
[INFO] Compiling 2 source files to /home/milind/eclipse-workspace/01struts2demo/target/classes
[INFO] 
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ 01struts2demo ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /home/milind/eclipse-workspace/01struts2demo/src/test/resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.5.1:testCompile (default-testCompile) @ 01struts2demo ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ 01struts2demo ---
[INFO] No tests to run.
[INFO] 
[INFO] --- maven-war-plugin:2.2:war (default-war) @ 01struts2demo ---
[INFO] Packaging webapp
[INFO] Assembling webapp [01struts2demo] in [/home/milind/eclipse-workspace/01struts2demo/target/01struts2demo]
[INFO] Processing war project
[INFO] Copying webapp resources [/home/milind/eclipse-workspace/01struts2demo/src/main/webapp]
[INFO] Webapp assembled in [825 msecs]
[INFO] Building war: /home/milind/eclipse-workspace/01struts2demo/target/01struts2demo.war
[INFO] WEB-INF/web.xml already added, skipping
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  15.574 s
[INFO] Finished at: 2021-01-03T15:54:36-05:00
[INFO] ------------------------------------------------------------------------
警告:发生了非法的反射访问操作
警告:com.google.inject.internal.cglib.core.$reflecturatils$1(文件:/usr/share/maven/lib/guice.jar)对方法java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)的非法反射访问
警告:请考虑将此报告给COM。谷歌。
警告:使用--invalize access=warn以启用对进一步非法访问操作的警告
警告:所有非法访问操作将在未来版本中被拒绝
[信息]正在扫描项目。。。
[信息]
[信息]--------------------------------
[信息]Building struts2demo Maven Webapp 0.0.1-SNAPSHOT
[信息]------------------------------------[战争]---------------------------------
[信息]
[信息]---maven clean插件:2.5:clean(默认清洁)@01struts2demo---
[信息]删除/home/milind/eclipse workspace/01struts2demo/target
[信息]
[信息]---maven资源插件:2.6:resources(默认资源)@01struts2demo---
[警告]使用平台编码(实际上是UTF-8)复制过滤后的资源,即构建依赖于平台!
[信息]正在复制0资源
[信息]
[信息]---maven编译器插件:3.5.1:编译(默认编译)@01struts2demo---
[信息]检测到更改-重新编译模块!
[警告]未使用平台编码UTF-8设置文件编码,即生成依赖于平台!
[信息]将2个源文件编译到/home/milind/eclipse workspace/01struts2demo/target/classes
[信息]
[信息]---maven资源插件:2.6:testResources(默认testResources)@01struts2demo---
[警告]使用平台编码(实际上是UTF-8)复制过滤后的资源,即构建依赖于平台!
[信息]跳过不存在的resourceDirectory/home/milind/eclipse workspace/01struts2demo/src/test/resources
[信息]
[信息]---maven编译器插件:3.5.1:testCompile(默认testCompile)@01struts2demo---
[信息]无需编译-所有类都是最新的
[信息]
[信息]---maven surefire插件:2.12.4:test(默认测试)@01struts2demo---
[信息]没有要运行的测试。
[信息]
[信息]---maven war插件:2.2:war(默认war)@01struts2demo---
[信息]打包webapp
[信息]在[/home/milind/eclipse workspace/01struts2demo/target/01struts2demo]中组装webapp[01struts2demo]
[信息]处理战争项目
[INFO]正在复制webapp资源[/home/milind/eclipse workspace/01struts2demo/src/main/webapp]
[信息]Webapp在[825毫秒]内组装
[信息]构建war:/home/milind/eclipse workspace/01struts2demo/target/01struts2demo.war
[INFO]WEB-INF/WEB.xml已添加,正在跳过
[信息]------------------------------------------------------------------------
[信息]建立成功
[信息]------------------------------------------------------------------------
[信息]总时间:15.574秒
[信息]完成时间:2021-01-03T15:54:36-05:00
[信息]------------------------------------------------------------------------
我的pom文件是

<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 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.milind.struts2</groupId>
    <artifactId>01struts2demo</artifactId>
    <packaging>war</packaging>
    <version>0.0.1-SNAPSHOT</version>
    <name>struts2demo Maven Webapp</name>
    <url>http://maven.apache.org</url>
    <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
    </properties>
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.1</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.struts</groupId>
            <artifactId>struts2-core</artifactId>
            <version>2.5.26</version>
        </dependency>
        <dependency>
            <groupId>org.apache.struts</groupId>
            <artifactId>struts-taglib</artifactId>
            <version>1.3.10</version>
        </dependency>
    </dependencies>
    <build>
        <finalName>01struts2demo</finalName>
        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.5.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

4.0.0
com.milind.struts2
01struts2demo
战争
0.0.1-快照
struts2demo Maven Webapp
http://maven.apache.org
1.8
1.8
朱尼特
朱尼特
3.8.1
测试
javax.servlet
javax.servlet-api
4.0.1
假如
org.apache.struts
struts2型芯
2.5.26
org.apache.struts
struts标记库
1.3.10
01struts2demo
maven编译器插件
3.5.1
1.8
1.8
另外,当我使用Tomcat9运行项目时,我得到以下错误。我检查了war文件,它有所需的jar文件(struts2-core-2.5.26.jar、struts-core-1.3.10.jar、struts-taglib-1.3.10.jar)

2021年1月3日下午3:20:00 org.apache.catalina.core.StandardContext filterStart
严重:启动过滤器时出现异常[struts2]
java.lang.ClassNotFoundException:org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter
位于org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1365)
位于org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1188)
位于org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:539)
位于org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:520)
位于org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:150)
位于org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:249)
位于org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:102)
位于org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4566)
位于org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5203)
位于org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
位于org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1384)
位于org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1374)
位于java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
位于org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
位于java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
位于org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:909)
在
Jan 03, 2021 3:20:00 PM org.apache.catalina.core.StandardContext filterStart
SEVERE: Exception starting filter [struts2]
java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1365)
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1188)
    at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:539)
    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:520)
    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:150)
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:249)
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:102)
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4566)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5203)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1384)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1374)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
    at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
    at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:909)
    at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:843)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1384)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1374)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
    at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
    at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:909)
    at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
    at org.apache.catalina.core.StandardService.startInternal(StandardService.java:434)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
    at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:930)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:772)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:564)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:342)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:473)

Jan 03, 2021 3:20:00 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: One or more Filters failed to start. Full details will be found in the appropriate container log file
Jan 03, 2021 3:20:00 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Context [/01struts2demo] startup failed due to previous errors
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.apache.catalina.loader.WebappClassLoaderBase (file:/opt/apache-tomcat-9.0.41/lib/catalina.jar) to field java.io.ObjectStreamClass$Caches.localDescs
WARNING: Please consider reporting this to the maintainers of org.apache.catalina.loader.WebappClassLoaderBase
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Jan 03, 2021 3:20:00 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-nio-8080"]
Jan 03, 2021 3:20:00 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in [1429] milliseconds
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" version="3.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
                             https://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
    <display-name>Archetype Created Web Application</display-name>
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>

    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

</web-app>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
   "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
   "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
   <constant name = "struts.devMode" value = "true" />
   <package name = "default" extends = "struts-default">
      <action name = "hello" 
         class = "com.milind.struts2demo.action.HelloWorldAction" 
         method = "execute">
         <result name = "success">/hello.jsp</result>
         <result name = "input">/index.jsp</result>
      </action>
   </package>
</struts>