本人使用的版本是 Intellij IDEA 2017.1
最近刚学习使用 Intellij IDEA 开发项目,就遇到了坑爹的问题,部署一个简单的 ssh 项目,tomcat启动正常,没有任何报错,就是打不开项目,一直报404,错误如下图:
控制台输出:
D:\apache-tomcat-7.0.57\bin\catalina.bat run
[2017-05-19 12:18:47,831] Artifact SSHDemo:war exploded: Server is not connected. Deploy is not available. Configuration Error: deployment source 'SHDemo:war exploded' is not valid [2017-05-19 12:18:47,831] Artifact SHDemo:war exploded: Error during artifact deployment. See server log for details. Using CATALINA_BASE: "C:\Users\hasee\.IntelliJIdea2017.1\system\tomcat\Tomcat_7_0_57_Eweb" Using CATALINA_HOME: "D:\apache-tomcat-7.0.57" Using CATALINA_TMPDIR: "D:\apache-tomcat-7.0.57\temp" Using JRE_HOME: "D:\JDK" Using CLASSPATH: "D:\apache-tomcat-7.0.57\bin\bootstrap.jar;D:\apache-tomcat-7.0.57\bin\tomcat-juli.jar" Connected to the target VM, address: '127.0.0.1:53588', transport: 'socket' 五月 19, 2017 12:18:48 上午 org.apache.catalina.startup.VersionLoggerListener log 信息: Server version: Apache Tomcat/7.0.57 ……………… 五月 19, 2017 12:18:50 上午 org.apache.catalina.startup.Catalina start 信息: Server startup in 51 ms Connected to server [2017-05-19 12:18:53,290] Artifact SSHDemo:war exploded: Artifact is being deployed, please wait... 五月 19, 2017 12:18:53 上午 org.apache.catalina.deploy.WebXml setVersion 警告: Unknown version string [3.1]. Default version will be used. [2017-05-19 12:18:54,447] Artifact SSHDemo:war exploded: Artifact is deployed successfully [2017-05-19 12:18:54,447] Artifact SSHDemo:war exploded: Deploy took 1,157 milliseconds
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
整整耗费了我两个晚上,最后才发现是一个极其弱智的配置问题。现把整个项目的部署流程说一下:
1、首先,右击项目,点击 open module settings
2、配置 project,主要是本地 jdk 的安装路径,还有项目编译输出的路径
3、配置 modules ,其中 paths 定位到 web-inf/classes ;dependencies 加入jdk和项目 web-inf/lib
4、配置 libraries ,点击 + 号,选择 java ,然后还是选择你项目的 web-inf/lib
5、配置 facets ,此步很重要,配置 web resource directories ,路径配错,就会报 404 ,一定要定位到项目根目录,也就是下面有整个项目源码的地方
注:本人就是定位到了另一个地方,导致 404,本来应该到 webroot,结定位到了 web
6、 配置 artifacts ,此步选择第二个,选择你的项目即可
7、部署到 tomcat
然后运行就可以了……