栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何将War文件添加到另一个Java Web应用程序依赖项?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何将War文件添加到另一个Java Web应用程序依赖项?

在Maven中,添加依赖关系只是小菜一碟。看下面的pom.xml。

<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/maven-v4_0_0.xsd">    <modelVersion>4.0.0</modelVersion>    <!-- Project Details -->    <groupId>ykyuen</groupId>    <artifactId>project-apple</artifactId>    <packaging>jar</packaging>    <version>1.0</version>    <name>project-apple</name>    <dependencies>        <!-- project-apple depends on project-banana -->        <dependency> <groupId>ykyuen</groupId> <artifactId>project-banana</artifactId> <version>1.0</version>        </dependency>    </dependencies></project>

设置以上依赖项与在project-apple中导入project-banana.jar相同。

现在,我有另一个Maven Web应用程序项目,称为project-
orange,其包装类型等于war。由于Java不会将.war文件视为类路径,因此添加上述依赖关系链接根本无法进行。

要解决此问题,有两种方法:

  1. 创建一个Maven模块,其中包含带有jar包装的项目橙色类。现在,您可以将新的Maven模块视为普通依赖项。

  2. 配置maven-war-plugin,使其在构建.war文件时将构建.jar文件。在战争项目的节点下添加以下代码。以下是一个示例。

...<build>    <plugins>        <plugin> <artifactId>maven-war-plugin</artifactId> <version>2.1.1</version> <configuration>     <attachClasses>true</attachClasses>     <classesClassifier>classes</classesClassifier> </configuration>        </plugin>    </plugins></build>...

运行mvn install之后,您可以在目标文件夹中找到以下存档文件

  • 橘子战
  • project-orange-classes.jar

现在,您可以编辑project-apple的pom.xml以添加新的依赖项。

<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/maven-v4_0_0.xsd">    <modelVersion>4.0.0</modelVersion>    <!-- Project Details -->    <groupId>ykyuen</groupId>    <artifactId>project-apple</artifactId>    <packaging>jar</packaging>    <version>1.0</version>    <name>project-apple</name>    <dependencies>        <!-- project-apple depends on project-banana -->        <dependency> <groupId>ykyuen</groupId> <artifactId>project-banana</artifactId> <version>1.0</version>        </dependency>        <!-- project-apple depends on project-orange -->        <dependency> <groupId>ykyuen</groupId> <artifactId>project-orange</artifactId> <version>1.0</version> <!-- To map the project-orange-classes.jar --> <classifier>classes</classifier>        </dependency>    </dependencies></project>

参考 :http : //eureka.ykyuen.info/2009/10/30/maven-dependency-on-
jarwar-package/



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/609500.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号