我按照(由某人提供给我的)步骤在 Windows 上的 JBOSS 上部署 war 文件,如下所示:
1)我创建了一个文件夹Verson3
2) 使用 Windows 命令提示符,我进入文件夹 Version3
3)我运行了以下命令并获得了构建成功
Y:\myusername\My Documents>cd Version3
Y:\myusername\My Documents\Version3>mvn archetype:generate -DgroupId=com.pkg.DownloadService -DartifactId=DownloadService -DarchetypeArtifactId=maven-archetype-we
bapp -DinteractiveMode=false
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] >>> maven-archetype-plugin:3.0.1:generate (default-cli) > generate-sources @ standalone-pom >>>
[INFO]
[INFO] <<< maven-archetype-plugin:3.0.1:generate (default-cli) < generate-sources @ standalone-pom <<<
[INFO]
[INFO]
[INFO] --- maven-archetype-plugin:3.0.1:generate (default-cli) @ standalone-pom ---
[INFO] Generating project in Batch mode
[INFO] ----------------------------------------------------------------------------
[INFO] Using following parameters for creating project from Old (1.x) Archetype: maven-archetype-webapp:1.0
[INFO] ----------------------------------------------------------------------------
[INFO] Parameter: basedir, Value: Y:\myusername\My Documents\Version3
[INFO] Parameter: package, Value: com.pkg.DownloadService
[INFO] Parameter: groupId, Value: com.pkg.DownloadService
[INFO] Parameter: artifactId, Value: DownloadService
[INFO] Parameter: packageName, Value: com.pkg.DownloadService
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] project created from Old (1.x) Archetype in dir: Y:\myusername\My
Documents\Version3\DownloadService
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 12.262 s
[INFO] Finished at: 2018-02-22T17:16:11-06:00
[INFO] Final Memory: 15M/161M
[INFO] ------------------------------------------------------------------------
这生成了以下目录结构:
Version3
|-- src
| `-- main
| |-- resources
| `-- webapp
| |-- WEB-INF
| | `-- web.xml
| `-- index.jsp
`-- pom.xml
4) 接下来,我被要求添加以下内容并从 pom.xml
<repositories>
<repository>
<id>JBoss repository</id>
<url>https://repository.jboss.org/nexus/content/groups/public-jboss/</url>
</repository>
</repositories>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
<version>2.3.2.Final</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0</version>
</dependency>
</dependencies>
5) 我所做的另一项更改是在 web.xml
中进行的:
<!-- Auto scan REST service -->
<context-param>
<param-name>resteasy.scan</param-name>
<param-value>true</param-value>
</context-param>
<!-- this need same with resteasy servlet url-pattern -->
<context-param>
<param-name>resteasy.servlet.mapping.prefix</param-name>
<param-value>/rest</param-value>
</context-param>
<listener>
<listener-class>
org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap
</listener-class>
</listener>
<servlet>
<servlet-name>resteasy-servlet</servlet-name>
<servlet-class>
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>resteasy-servlet</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
6) 运行以下命令:mvn clean package
其中 pom 文件所在。这创建了 target
文件夹和 war 文件等。
我想知道的是,根据我收到的说明,在上述过程中的任何地方都没有使用任何 java
文件。但我确实有一个java文件
定义了一个 JAXRS Web 服务,并且该文件中提到的包名称是 com.pkg.DownloadService。我想知道我是否应该考虑放置它
DownloadService
文件夹中的 java 文件,然后运行上述所有命令?因为在没有任何 Web 服务的情况下构建一个 war 文件对我来说没有意义。
最佳答案
您应该将 DownloadService.java 放在 src/main/java/com/pkg 下。按照您的目录结构,它看起来像:
Version3
|-- src
| `-- main
| |-- java
| | `-- com
| | `-- pkg
| | `-- DownloadService.java
| |-- resources
| `-- webapp
| |-- WEB-INF
| | `-- web.xml
| `-- index.jsp
`-- pom.xml
关于java - 无需java代码构建war文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48939586/