gpt4 book ai didi

java - 当前目录中的 java WAR 应用程序的开发服务器,没有 sudo

转载 作者:行者123 更新时间:2023-11-28 22:06:24 26 4
gpt4 key购买 nike

在 Rails 和大多数现代 Web 框架中,我可以通过使用单个简单命令 (rails server) 运行开发服务器并访问浏览器来轻松地以交互方式开发 Web 应用程序。

对于 Java WAR 应用程序,我能找到的运行它的唯一方法是安装 tomcat,构建并将应用程序复制到它的 webapps 文件夹中,这需要 sudo。

有没有更简单的方法来运行此类 WAR 应用程序进行开发而无需 sudo,并且无需复制目录(这特别糟糕,因为 webapps 文件夹随安装而变化)?

基于保存构建的 inotify 会更好,这样我就可以编辑文件并在重新加载浏览器后立即看到结果。

我并不局限于使用 Tomcat:任何能够运行 WAR 文件的 Servlet/JSP 实现都适合我。

最佳答案

使用 Maven

如果您已经在使用 Maven 构建您的项目,那么最简单的途径可能是 Jetty Maven plugin .

首先,将其添加到您的 pom.xml 中:

<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.2.7-SNAPSHOT</version>
</plugin>

然后您可以从命令行运行 Jetty 服务器:

mvn jetty:run

这很像 Rails,因为它在您的控制台中启动服务器。它会监视对您的应用程序源文件或配置文件的更改,并在必要时重新加载。

sudo 没有问题,因为您没有将 war 文件打包和部署到其他地方的 tomcat 实例。相反,它直接从 Maven 创建的输出目录将您的应用程序作为分解的 war 文件运行。

但是,我很欣赏这听起来比实际上更容易 - 大部分工作很可能是将您的项目转换为 Maven...

使用独立 Jetty 自动部署 Web 应用

如果您不想将项目移交给 Maven,另一种方法是使用 Jetty 的 automated web app deployment .

关于java - 当前目录中的 java WAR 应用程序的开发服务器,没有 sudo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27899442/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com