Leg*_*end 29 java deployment tomcat
I am fairly new to Tomcat. I just managed to build a project and exported it as a WAR file. I tried manually copying a WAR file to the Tomcat folder then restarting. It created the folder structure and everything but I get a 404 Status code when I try to reach the application. I tried deploying it through the Tomcat Admin panel but I'm seeing the same behavior. Am I doing anything fundamentally wrong?
Tho*_*mas 11
假设您拥有Tomcat安装的完全权限,请尝试进入http://localhost:8080/manager/html/,如果您不知道进入该区域的密码,请tomcat-users.xml在您的${tomcat-installation}/conf目录中查找该文件,并且应该拥有该文件.如果它中没有条目,那么您将需要添加如下条目:
<user username="username" password="password" roles="admin,manager" />
Run Code Online (Sandbox Code Playgroud)
查看您的应用程序是否显示在该屏幕中,如果出现,请单击该链接,看看是否可以将您带到任何地方.如果没有,那么我建议遵循ifishers的建议,并查看日志文件以查看它是否列出任何错误.
但长话短说,很可能是你的项目搞砸了 web.xml
hel*_*rth 10
最近,如果 JAVA_HOME 指向比 WAR 中的代码更早的 Java 版本,则可能会发生这种情况。Tomcat 可能会使用 JAVA_HOME 来确定它在 Tomcat 的 BIN 目录中运行 startup.bat 后显示的 JRE_HOME。虽然 Tomcat 可能对它获得的 Java 版本感到满意,但对于应用程序来说,这可能还不够。就我而言,Tomcat 8.0.49 在 JDK1.7 上运行良好,而应用程序根本没有初始化(是的,它是一个 Spring Boot 应用程序,WAR 正在被解包,但仅此而已)- 没有给出任何错误。将JAVA_HOME设置为JDK1.8的位置后,问题解决。
小智 6
我也有同样的问题。我的问题是我的应用程序名称和 war 文件名不同。我已将 war 文件名更改为我的应用程序名称。
在这里,当您的应用程序部署时,tomcat 会自动提取您的同名 war 文件。就我而言,我的服务名称是 my-web-service(即https://localhost:8080/my-web-service/),我的战争文件名称是 MY-java-connector-0.0.1-SNAPSHOT.war(this是我的项目文件夹名称)。现在 tomcat 正在寻找 my-web=service 文件夹,它找到了 Epicor-java-connector-0.0.1-SNAPSHOT 文件夹。所以将文件夹重命名为 my-web=service.war 并且它正在工作。
我有同样的问题,我的问题是我通过 sftp 将文件直接复制到 tomcat 的 webapps 目录中,这可能导致轮询问题导致它无法正确部署。Tomcat 监视 webapps 目录,当它看到 .xml 时,它会破解并执行它的操作,问题是可能所有内容还没有被复制。:(
最好创建一个临时文件夹,将 war 移动或复制到该文件夹,然后使用 linux mv 命令将其移动到 webapps - mv 是原子的,因此在操作完成之前 tomcat 不会做任何事情。
魔法。
归功于我在 javarance 上发现的一个非常非常随机的帖子,这又导致:http ://pub.admc.com/howtos/tomcat/ch02.html#stagedir-section
希望这对其他人有帮助:)
小智 5
如果您像我一样使用 Spring-Boot 来创建 WAR 文件,请确保将以下内容添加到您的主应用程序文件中。
@SpringBootApplication
public class serverTestApplication extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(serverTestApplication.class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(serverTestApplication.class);
}
}
Run Code Online (Sandbox Code Playgroud)
我被困在这个问题上有一段时间了,浏览了几十本指南。这是最终向我展示我从未正确配置应用程序的视频: https://www.youtube.com/watch?v=05EKZ9Xmfws
hvg*_*des -3
你试过了吗
localhost:8080/app
Run Code Online (Sandbox Code Playgroud)
假设你的战争文件是app.war?
编辑评论——那么你的 web.xml 就搞砸了。
| 归档时间: |
|
| 查看次数: |
52588 次 |
| 最近记录: |