当前位置: 首页 > 面试题库 >

从单个Maven项目构建EAR

梁修贤
2023-03-14
问题内容

有一个以前具有JAR打包类型的Maven项目。现在,该项目已经发展起来,需要将它构建为EAR,包括JAR属性及其依赖项。

这是否一定意味着我必须引入第二种带EAR封装的POM?是否可以从单个Maven项目构建JAR +
EAR?其背后的原因是,我真的不希望从根本上重组我的存储库结构。

如果不可能,我想我需要以某种方式重组项目结构以利用Maven模块。在这种情况下,您会建议什么样的(子)模块结构?


问题答案:

您将需要3 pom,这是一个工作示例;

pom 1是父母

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.greg</groupId>
  <artifactId>ear-example</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>pom</packaging>

  <name>ear-example</name>
  <modules>
    <module>example-jar</module>
    <module>example-ear</module>
  </modules>

</project>

pom 2是罐子或战争

<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>com.greg</groupId>
    <artifactId>ear-example</artifactId>
    <version>1.0-SNAPSHOT</version>
  </parent>

  <artifactId>example-jar</artifactId>
  <packaging>jar</packaging>

  <name>com.greg</name>
  <url>http://maven.apache.org</url>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>

pom 3是依赖于jar / war的耳朵

<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>com.greg</groupId>
    <artifactId>ear-example</artifactId>
    <version>1.0-SNAPSHOT</version>
  </parent>

  <artifactId>example-ear</artifactId>
  <packaging>ear</packaging>

  <dependencies>
    <dependency>
      <groupId>com.greg</groupId>
      <artifactId>example-jar</artifactId>
      <version>${project.version}</version>
    </dependency>
  </dependencies>

  <build>
   <plugins>
     <plugin>
        <artifactId>maven-ear-plugin</artifactId>
        <version>2.10.1</version>
        <configuration>
        </configuration>
      </plugin>
    </plugins>
  </build>

</project>


 类似资料:
  • 我正在学习RESTfulWeb服务教程http://www.concretepage.com/spring-4/spring-4-rest-web-service-json-example-tomcat.Is具有spring框架依赖项。我没有下载二进制文件并将其放入lib目录,而是在pom中包含了一个依赖项。xml类似 当我右键单击-

  • 嗨我在网上搜了一遍,看了一堆文章,所以问题和文档都找不到解决办法,这里是我的问题。 我有一个多模块maven项目,其中包含三个模块a、B和C,a和B独立,C依赖于a和B,当然我有一个父项目。我还设置了一个jenkins服务器来构建这些项目,以及一个nexus存储库。 如有任何帮助,不胜感激。谢谢!

  • 学习前提 相对于传统的项目,Maven 下管理和构建的项目真的非常好用和简单,所以这里也强调下,尽量使用此类工具进行项目构建。 学习本讲还有一个前提:你必须会 Maven 相关知识点,Maven 相关知识点是不在本专题的讲解范围里面的,所以请自己私下进行学习。如果愿意你也可以看我过去整理的一份视频(提取码:wh5g):http://pan.baidu.com/s/1eSovBkI Maven 常用

  • 我在公司做一个目录结构的项目。现在我必须将project转换为Maven project。它是基于公司框架的web应用程序。项目导出到war文件, 以下是项目结构: 我不能使用标准的Maven结构。到目前为止,我构建了pom。xml文件并使项目正常工作。依赖项是从私有服务器下载的,可以正常工作。 问题是文件结构。我试图覆盖默认的maven路径,但没有成功。当我导出war文件时,没有css、html

  • 本文向大家介绍jenkins+Maven从SVN上构建项目的方法,包括了jenkins+Maven从SVN上构建项目的方法的使用技巧和注意事项,需要的朋友参考一下 一、安装Maven 下载地址:https://maven.apache.org/download.cgi 把下载的安装包解压 配置环境变量 使配置文件生效 查看版本信息 二、jenkins配置 1、配置jdk 先在Jenkins服务器上