maven - 如何在文件名中没有版本的情况下将依赖项包含到 EAR 中

标签 maven dependencies

我正在使用 maven 创建 .ear

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-ear-plugin</artifactId>
  <version>2.6</version>
  <configuration>
    <finalName>wsformatter-ear</finalName>
    <includeLibInApplicationXml>true</includeLibInApplicationXml>
    <version>1.4</version>
  </configuration>
</plugin>  

.ear 中的所有依赖项看起来像 joda-time-1.6.2.jar , commons-io-1.4.jar 等等。

而且,我有依赖项,我想要没有版本。比如我该怎么办,那个依赖 slf4j-api-1.5.6.jar 看起来像 slf4j-api.jar 在我耳边

最佳答案

我完全同意 Michal Kalinowski 的观点。但是我陷入了同样的情况,嗯,实际上是相反的情况 - 有人将项目配置为排除最终 EAR 中的版本,我正在寻找一种方法来取消它,因为它违背了 Maven 的生活方式,所以我我在网上搜索并发现了这个问题,但我在代码中找到了答案。您可以使用:

<plugin>
   <groupId>org.apache.maven.plugins</groupId>
   <artifactId>maven-ear-plugin</artifactId>
   <configuration>
        <version>5</version>
    <defaultLibBundleDir>lib</defaultLibBundleDir>
    <fileNameMapping>no-version</fileNameMapping>
   </configuration>
</plugin>

带有标签的行 文件名映射 是你想要的。我希望这会有所帮助。

关于maven - 如何在文件名中没有版本的情况下将依赖项包含到 EAR 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10085678/

相关文章:

java - 使用 nar-maven-plugin 将外部 .so 库添加到 jni 项目

java - 使用 Intellij 或 Maven 生成 SQLite 数据库进行单元测试?

java - 如何将文件添加到 EAR META-INF 文件夹 - Maven

tomcat - Grails 在缺少类 GrailsMock 的 tomcat 上失败

java - 如何确定给定 Maven 依赖项的来源?

android - 构建 gradle : Could not find method packagingOptions() for arguments root Project "fasterDev"

maven - Maven 插件和依赖项有什么区别?

java - maven2 编译错误 : "invalid CEN header (bad signature)"

java - Gradle 自定义提供的范围包括 jar 到 war 存档

ruby-on-rails - 错误: Cannot find module 'express-session' when deploying to Heroku