我安装了JBoss Developer Studio,可以通过“右键项目>导出> WAR文件”创建一个WAR文件,但是我想用命令行将我的项目导出为WAR文件。如何使用命令行创建WAR文件?
我安装了maven,这是Studio的需求之一,我读到我可以使用maven生成WAR文件,但我需要一个名为pom.xml的文件。当我搜索我的工作区和项目时,pom.xml丢失了。我可能需要手动创建pom.xml,但我不确定如何。
我的目录树为我的项目如下:
Siesta
├── build
│ └── classes
├── src
└── WebContent
├── extjs
├── extjs-4.2.0
├── extjs-4.2.2
├── index.jsp
├── META-INF
├── siesta
├── tests
└── WEB-INF
如何创建一个WAR文件使用命令行我的Maven/JBoss的项目?我使用Linux,并且不希望创建pom.xml文件,但如果没有其他方法,那么我将使用xml文件生成war文件。
编辑:
所以罐子是去创建一个war文件的方式。我写了一个小脚本,将为我创建一个特定目录的战争文件。
#!/bin/bash
cd Siesta/WebContent/
jar -cvf ../../Siesta.war *
cd -
然后,如果你打开一个压缩实用程序或在Ubuntu归档管理war文件,你会看到这种结构
├── extjs
├── extjs-4.2.0
├── extjs-4.2.2
├── index.jsp
├── META-INF
├── siesta
├── tests
└── WEB-INF
我必须CD到该目录,我想创建一个其中的战争档案很烦人。我认为使用jar的-C选项可能会有更好的方法,但是当我使用“jar -cvf Siesta.war -C Siesta/WebContent *”时,它没有得到相同的结果。
EDIT2:
jar -cvf my-app.war myfolder/
对于我的应用程序在Tomcat上工作,我用的是以下几点:
cd Siesta/WebContent
jar -cvf Siesta.war *
有趣的,所以你使用“jar cvf my-app.war”会创建我的.war文件,或者如果TomCat只需要一个.war zip文件,那么我所需要做的就是压缩目录的内容。让我尝试一下。 – SomeGuyOnAComputer 2015-03-25 12:08:35
@SomeGuyOnAC计算机以及我还没有测试过的jar工具是诚实的。但是,如果您遵循WAR目录布局并在该结构内部有一个可用的Web应用程序(可能是'/ WEB-INF /'中的单个'index.html'文件),那么您可以将该文件夹压缩并重命名为ZIP一个WAR并将其部署在您的本地Tomcat上 – JBA 2015-03-25 12:39:31
我尝试了zip方法,但不幸的是没有工作。然而,http://stackoverflow.com/questions/16342075/generate-war-file-from-tomcat-webapp-folder正是使用了上面的“jar -cvf my-app.war myfolder /”,并且这样做了! – SomeGuyOnAComputer 2015-04-15 16:08:52