首次创建IDEA maven web demo 运行失败,原因未

环境: JDK10/Tomcat9/IDEA2018.2.2

步骤

1

首次创建IDEA maven web demo 运行失败,原因未

2

首次创建IDEA maven web demo 运行失败,原因未

3

首次创建IDEA maven web demo 运行失败,原因未

4

首次创建IDEA maven web demo 运行失败,原因未

5 得到下面这个

首次创建IDEA maven web demo 运行失败,原因未

6 main下new java package (sources root)

首次创建IDEA maven web demo 运行失败,原因未

修改pom.xml

<?xml version="1.0" encoding="UTF-8"?>


4.0.0

com.itheima
maven_demo
1.0-SNAPSHOT
war

maven_demo Maven Webapp

http://www.example.com

junit junit 4.11 test
<dependency>
  <groupId>javax.servlet</groupId>
  <artifactId>javax.servlet-api</artifactId>
  <version>3.1.0</version>
  <scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/jstl/jstl -->
<dependency>
  <groupId>jstl</groupId>
  <artifactId>jstl</artifactId>
  <version>1.2</version>
  <scope>provided</scope>
</dependency>

<dependency>
  <groupId>javax.servlet.jsp</groupId>
  <artifactId>jsp-api</artifactId>
  <version>2.0</version>
  <scope>provided</scope>
</dependency>
maven_demo maven-clean-plugin 3.1.0 maven-resources-plugin 3.0.2 maven-compiler-plugin 3.8.0 maven-surefire-plugin 2.22.1 maven-war-plugin 3.2.2 maven-install-plugin 2.5.2 maven-deploy-plugin 2.8.2

8

java包下 建立com.itheima.servlet包下,新建MyServlet
首次创建IDEA maven web demo 运行失败,原因未package com.itheima.servlet;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet(name = “MyServlet”)
public class MyServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    request.getRequestDispatcher("/hello.jsp").forward(request, response);
}

}

9 改下web.xml

首次创建IDEA maven web demo 运行失败,原因未

MyServlet com.itheima.servlet.MyServlet MyServlet /

10 建立个hello.jsp在webapp下

首次创建IDEA maven web demo 运行失败,原因未

11 配tomcat

首次创建IDEA maven web demo 运行失败,原因未首次创建IDEA maven web demo 运行失败,原因未首次创建IDEA maven web demo 运行失败,原因未首次创建IDEA maven web demo 运行失败,原因未

12 完事,界面是这鸟样

首次创建IDEA maven web demo 运行失败,原因未### 跑一下, 直接tomcat:run
“E:\Program Files\Java\bin\java.exe” -Dmaven.multiModuleProjectDirectory=F:\IdeaProjects\maven_demo -DarchetypeCatalog=internal “-Dmaven.home=D:\JetBrains\IntelliJ IDEA 2018.2.2\plugins\maven\lib\maven3” “-Dclassworlds.conf=D:\JetBrains\IntelliJ IDEA 2018.2.2\plugins\maven\lib\maven3\bin\m2.conf” “-javaagent:D:\JetBrains\IntelliJ IDEA 2018.2.2\lib\idea_rt.jar=4506:D:\JetBrains\IntelliJ IDEA 2018.2.2\bin” -Dfile.encoding=UTF-8 -classpath “D:\JetBrains\IntelliJ IDEA 2018.2.2\plugins\maven\lib\maven3\boot\plexus-classworlds-2.5.2.jar” org.codehaus.classworlds.Launcher -Didea.version=2018.2.2 tomcat:run
[INFO] Scanning for projects…
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building maven_demo Maven Webapp 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] >>> tomcat-maven-plugin:1.1:run (default-cli) > compile @ maven_demo >>>
[INFO]
[INFO] — maven-resources-plugin:3.0.2:resources (default-resources) @ maven_demo —
[INFO] Using ‘UTF-8’ encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory F:\IdeaProjects\maven_demo\src\main\resources
[INFO]
[INFO] — maven-compiler-plugin:3.8.0:compile (default-compile) @ maven_demo —
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 1 source file to F:\IdeaProjects\maven_demo\target\classes
[INFO]
[INFO] <<< tomcat-maven-plugin:1.1:run (default-cli) < compile @ maven_demo <<<
[INFO]
[INFO] — tomcat-maven-plugin:1.1:run (default-cli) @ maven_demo —
[INFO] Running war on http://localhost:8080/maven_demo
[INFO] Creating Tomcat server configuration at F:\IdeaProjects\maven_demo\target\tomcat
3月 29, 2019 12:31:49 上午 org.apache.catalina.startup.Embedded start
信息: Starting tomcat server
3月 29, 2019 12:31:50 上午 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/6.0.29
3月 29, 2019 12:31:50 上午 org.apache.coyote.http11.Http11Protocol init
信息: Initializing Coyote HTTP/1.1 on http-8080
3月 29, 2019 12:31:50 上午 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8080

点一下控制台那网址

首次创建IDEA maven web demo 运行失败,原因未严重: Compilation error
org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException
at org.eclipse.jdt.internal.compiler.classfmt.ClassFileReader.(ClassFileReader.java:342)
at org.apache.jasper.compiler.JDTCompiler$1.findType(JDTCompiler.java:206)
at org.apache.jasper.compiler.JDTCompiler1.findType(JDTCompiler.java:163)atorg.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:96)atorg.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding.resolve(UnresolvedReferenceBinding.java:49)atorg.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType(BinaryTypeBinding.java:97)atorg.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:167)atorg.eclipse.jdt.internal.compiler.lookup.Scope.getType(Scope.java:2187)atorg.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:974)atorg.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1164)atorg.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:366)atorg.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:623)atorg.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:392)atorg.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:429)atorg.apache.jasper.compiler.Compiler.compile(Compiler.java:349)atorg.apache.jasper.compiler.Compiler.compile(Compiler.java:327)atorg.apache.jasper.compiler.Compiler.compile(Compiler.java:314)atorg.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592)atorg.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)atorg.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)atorg.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)atjavax.servlet.http.HttpServlet.service(HttpServlet.java:717)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)atorg.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)atorg.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)atorg.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)atorg.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)atorg.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)atorg.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)atorg.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)atorg.apache.coyote.http11.Http11Protocol1.findType(JDTCompiler.java:163) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:96) at org.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding.resolve(UnresolvedReferenceBinding.java:49) at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType(BinaryTypeBinding.java:97) at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:167) at org.eclipse.jdt.internal.compiler.lookup.Scope.getType(Scope.java:2187) at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:974) at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1164) at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:366) at org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:623) at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:392) at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:429) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:349) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:327) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:314) at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857) at org.apache.coyote.http11.Http11ProtocolHttp11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.base/java.lang.Thread.run(Thread.java:844)

3月 29, 2019 12:33:05 上午 org.apache.jasper.compiler.JDTCompiler$1 findType
严重: Compilation error
org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException
at org.eclipse.jdt.internal.compiler.classfmt.ClassFileReader.(ClassFileReader.java:342)
at org.apache.jasper.compiler.JDTCompiler$1.findType(JDTCompiler.java:206)
at org.apache.jasper.compiler.JDTCompiler1.findType(JDTCompiler.java:163)atorg.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:96)atorg.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding.resolve(UnresolvedReferenceBinding.java:49)atorg.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType(BinaryTypeBinding.java:97)atorg.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getType(LookupEnvironment.java:960)atorg.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getResolvedType(LookupEnvironment.java:891)atorg.eclipse.jdt.internal.compiler.lookup.Scope.getJavaLangClass(Scope.java:1988)atorg.eclipse.jdt.internal.compiler.ast.ClassLiteralAccess.resolveType(ClassLiteralAccess.java:93)atorg.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:334)atorg.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:372)atorg.eclipse.jdt.internal.compiler.ast.CastExpression.resolveType(CastExpression.java:434)atorg.eclipse.jdt.internal.compiler.ast.Assignment.resolveType(Assignment.java:184)atorg.eclipse.jdt.internal.compiler.ast.Expression.resolve(Expression.java:906)atorg.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStatements(AbstractMethodDeclaration.java:429)atorg.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements(MethodDeclaration.java:196)atorg.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:400)atorg.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1085)atorg.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1164)atorg.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:366)atorg.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:623)atorg.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:392)atorg.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:429)atorg.apache.jasper.compiler.Compiler.compile(Compiler.java:349)atorg.apache.jasper.compiler.Compiler.compile(Compiler.java:327)atorg.apache.jasper.compiler.Compiler.compile(Compiler.java:314)atorg.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592)atorg.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)atorg.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)atorg.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)atjavax.servlet.http.HttpServlet.service(HttpServlet.java:717)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)atorg.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)atorg.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)atorg.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)atorg.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)atorg.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)atorg.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)atorg.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)atorg.apache.coyote.http11.Http11Protocol1.findType(JDTCompiler.java:163) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:96) at org.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding.resolve(UnresolvedReferenceBinding.java:49) at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType(BinaryTypeBinding.java:97) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getType(LookupEnvironment.java:960) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getResolvedType(LookupEnvironment.java:891) at org.eclipse.jdt.internal.compiler.lookup.Scope.getJavaLangClass(Scope.java:1988) at org.eclipse.jdt.internal.compiler.ast.ClassLiteralAccess.resolveType(ClassLiteralAccess.java:93) at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:334) at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:372) at org.eclipse.jdt.internal.compiler.ast.CastExpression.resolveType(CastExpression.java:434) at org.eclipse.jdt.internal.compiler.ast.Assignment.resolveType(Assignment.java:184) at org.eclipse.jdt.internal.compiler.ast.Expression.resolve(Expression.java:906) at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStatements(AbstractMethodDeclaration.java:429) at org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements(MethodDeclaration.java:196) at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:400) at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1085) at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1164) at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:366) at org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:623) at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:392) at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:429) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:349) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:327) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:314) at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857) at org.apache.coyote.http11.Http11ProtocolHttp11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.base/java.lang.Thread.run(Thread.java:844)

3月 29, 2019 12:33:05 上午 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: Unable to compile class for JSP:

An error occurred at line: 1 in the generated java file
The type java.io.ObjectInputStream cannot be resolved. It is indirectly referenced from required .class files

An error occurred at line: 1 in the generated java file
The type java.lang.Class cannot be resolved. It is indirectly referenced from required .class files

An error occurred at line: 23 in the generated java file
The method getName() is undefined for the type Class

Stacktrace:
at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:439)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:349)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:327)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:314)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at org.apache.coyote.http11.Http11ProtocolHttp11ConnectionHandler.process(Http11Protocol.java:588)atorg.apache.tomcat.util.net.JIoEndpointHttp11ConnectionHandler.process(Http11Protocol.java:588) at org.apache.tomcat.util.net.JIoEndpointWorker.run(JIoEndpoint.java:489)
at java.base/java.lang.Thread.run(Thread.java:844)

醉了, 我检查一下编译器版本