Som*_*ter 13 jboss war pom.xml maven siesta
我安装了JBoss Developer Studio,可以通过"鼠标右键项目>导出> 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
Run Code Online (Sandbox Code Playgroud)
如何使用命令行为Maven/JBoss项目创建WAR文件?我使用Linux并且不想创建pom.xml文件,但如果没有其他方法,那么我将使用xml文件生成war文件.
编辑:
所以jar是创建war文件的方法.我写了一个小脚本,它将为我创建一个特定目录的war文件.
#!/bin/bash
cd Siesta/WebContent/
jar -cvf ../../Siesta.war *
cd -
Run Code Online (Sandbox Code Playgroud)
然后,如果您在ubuntu中的zip实用程序或归档管理器中打开war文件,您将看到此结构
??? extjs
??? extjs-4.2.0
??? extjs-4.2.2
??? index.jsp
??? META-INF
??? siesta
??? tests
??? WEB-INF
Run Code Online (Sandbox Code Playgroud)
我必须将CD放入我想要创建一个令人讨厌的war文件的目录中.我认为使用jar的-C选项可能有更好的方法,但是当我使用"jar -cvf Siesta.war -C Siesta/WebContent*"时,它没有相同的结果.
EDIT2:
jar -cvf my-app.war myfolder/
Run Code Online (Sandbox Code Playgroud)
为了我的应用程序在TomCat上工作,我使用以下内容:
cd Siesta/WebContent
jar -cvf Siesta.war *
Run Code Online (Sandbox Code Playgroud)
好的,这里是一个已经存在的 SO,有几种关于如何创建战争文件的可能性:如何创建战争文件。
我个人更喜欢 Maven,而不是任何其他构建方案 - 因为我从 ANT 迁移,所以我一开始不喜欢 Maven,但在对文档进行了一两天的投资之后:http : //maven.apache.org/pom.html我开始喜欢上了。在您的情况下,您只需要重构您的项目以满足 maven 标准文件结构,并pom.xml为您的源创建一个最小的 Maven 项目(又名文件),该项目具有打包war而不是默认的jar.
如果您只想使用控制台,并且除了 JDK 提供的构建助手之外不使用任何构建助手,您可以使用以下内容创建战争:
jar cvf my-app.war
看看这个:https : //docs.oracle.com/javase/tutorial/deployment/jar/build.html以获取支持选项的完整参考。
(注意:基于 Java 的 Web 应用程序上下文中的“战争”遵循标准格式:http : //docs.oracle.com/javaee/6/tutorial/doc/bnaby.html而技术“.war”文件是与重命名为“.zip”的 ZIP 压缩文件夹相同。)
(另请注意,我会真的花时间与行家取得联系,因为在那之后你了解了严重的构建工具,将能够创建jar,ear,war等在标准工艺)。
如果这是一个Maven项目,则打开控制台,导航到pom.xml文件所在的位置,然后运行:
mvn package
Run Code Online (Sandbox Code Playgroud)
它将在$ {basedir} / target目录下创建{artifactId}-{version} .war文件。假设您的pom.xml文件中的POM元素设置为。packagingwar
<project ...>
...
<packaging>war</packaging>
...
</project>
Run Code Online (Sandbox Code Playgroud)
一些有效的包装值是jar,war,ear和pom。如果未指定包装值,则默认为jar。
| 归档时间: |
|
| 查看次数: |
39703 次 |
| 最近记录: |