我将一个开源应用程序打包为Jar(仅限命令行)和War。我想要包含一个中间选项,它是从命令行作为服务器运行的(对于那些不熟悉Java,Servlets,Tomcat等的人来说)有这么好的方法吗?理想情况下,我不想编写和维护代码,只需要包含一些deps,在我的War / Resource类中指向一个main,并在java -jar thejar.jar -port 8080中指定它,然后让它为我启动一个服务器。
谢谢!
答案 0 :(得分:0)
使用Payara Micro(与GlassFish web兼容),您可以将战争,特定参数(即--port 8080
)及其依赖关系包装在" Uber Jar"中。这样您就可以使用java -jar thejar.jar
启动应用程序。
要做到这一点:
从payara.fish/downloads下载Payara Micro。
使用以下命令运行Payara Micro:
java -jar payara-micro-4.1.1.162.jar --port 8080 --deploy test-app.war --outputUberJar thejar.jar
这将结束,并为您提供与您的应用程序捆绑在一起的小型服务器(~60MB),您可以使用命令java -jar thejar.jar
开始。
有关详细信息,请参阅payara.fish
上的博客