问题标签 [maven-war-plugin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
maven - 配置 jetty:run 以使用“最终”lib 文件夹
我有一个使用war
覆盖的 Maven 项目。如本答案所述,WAR 覆盖的一个问题是它们似乎有效地回避了 Maven 的依赖关系解析。这会导致构建和/或运行时验证错误。
幸运的是,有一个解决方案 - 使用overlay/excludes
配置指令。这确保了结果WAR
只会有你想要的。
但是,似乎jetty:run
使用war
插件的work
目录进行库解析(其中确实包含“坏”JAR)。
通过使用jetty:run-war
或可以避免该问题jetty:run-exploded
。
然而,
- 由于我们的大多数项目使用 , 运行良好
jetty:run
, - 并且
jetty-run
在开发过程中使用 scanInterval 非常方便,
我想知道是否可以向 POM 添加一些配置更改以强制run
目标使用目标lib
文件夹?
出于说明目的,以下是具体示例:
- 该项目使用
org.apache.solr:solr:3.6.2
覆盖, - 覆盖包括旧版本的 Guava,
r05
而我们的代码使用更新的版本14.0.1
,, - 如前所述,虽然目标工件
war
很好,jetty:run
但将版本包含r05
在类路径中,这会导致我们的代码出现验证错误。
这是示例 POM:
maven - 如何从 maven-war-plugin 获取生成的 MANIFEST.MF 文件?
作为构建过程的一部分,我正在生成一个单独的工件(其中包含静态 Web 文件的压缩文件),我希望在其中包含与 war 插件生成的清单文件中相同的信息。清单文件已正确生成到 war 文件中,但我想访问它,以便我可以复制它并将它也放入我的压缩文件中。
在 maven-war-plugin:manifest 目标的文档中,它写道:
清单文件在 warSourceDirectory 中创建。
默认为位置:${basedir}/src/main/webapp
但是,生成的唯一清单是在战争中。将生成的清单文件放入我的源代码对我来说也没有任何意义。我认为它将被放在战争被打包的目标中。
我错过了什么吗?
maven - 为什么 Maven 会创建我过滤的 persistence.xml 的两个副本?
下面是我正在处理的 maven 项目的相关部分。我希望 Maven 过滤 WEB-INF 目录中的 persistence-context.xml 文件,然后将其放入我的战争中的 WEB-INF 目录中。当我在这个项目上运行 mvn clean package 时,我看到以下两件事。
在 target/projectname/ 文件夹中成功过滤的 persistence-context.xml。这不是正确的地方。我想要它在 WEB-INF 中的一个目录。
target/projectname/WEB-INF/ 文件夹中未过滤的 persistence-context.xml。这不是我想要的。我想要过滤后的。
我什至不确定这个文件的两个副本是如何生成的!任何帮助将非常感激。
maven - Maven:如何在战争中更改类 jar 名称?
我在 maven-war-plugin 的设置中使用archiveClasses
andattachClasses
以便将模块类打包在 jar 中。
但我想更改这个 .jar 名称。例如,war-classes.jar 而不是 module-war-1.0-SNAPSHOT.jar。
如果可以,我该怎么做?
maven - 如何在构建过程中替换spring的xml文件
我目前正在将我的 spring mvc web 应用程序捆绑到一个单一的 war 文件中,问题是我的 spring 上下文 xml 文件的开发版本正在部署到我的服务器上。
我在我的 xml 文件中为 mysql 和 hibernate 分配了调试或非优化配置。
如何在构建过程中将此文件与生产版本交换?
maven - maven-war-plugin chmod 退出代码是:127
我正在运行一个 shell 来调用一个 ant,它进一步调用了 Redhat 中的一个 maven。
谁能指出这个错误的背景?
[错误] 无法
在项目站点上执行目标 org.apache.maven.plugins:maven-war-plugin:2.3:war (default-war):解压文件时出错 [/scratch/mingtzha/12.1/.../sites -dojo/target/sites-dojo-1.6.1-12.1.4.0-SNAPSHOT.war] 到 [/scratch
/mingtzha/12.1/.../sites-dojo]:chmod 退出代码为:127 -> [帮助 1 ]
我发现这个“useJvmChmod”属性可能是相关的。 http://maven.apache.org/plugins/maven-war-plugin/war-mojo.html
maven - Maven 战争插件未按预期过滤
我目前正在使用 maven 3.1.1 和 maven war 插件 2.4 ( http://maven.apache.org/plugins/maven-war-plugin/war-mojo.html ) 建立一个 Web 项目。特别是,我正在尝试使用 maven war 插件以我过去已经做过的方式复制和过滤资源并且它有效。下面是相关的pom配置:
WAR插件配置
激活的配置文件定义:
META-INF/context.xml:
最后是“development.properties”:
context.xml 被复制到 WAR 中,但没有被过滤。如果我尝试直接在配置文件中写入属性,它可以工作(即不引用属性文件):只有当我引用属性文件时它才有效。读取属性文件似乎有问题。此外,在“打包”之后,maven 不会在控制台中告诉我找不到属性文件(所以 maven 找到了文件)。
最后,我尝试使用 maven war 插件 2.1.1 版(和 2.3 版)来完成这项工作,并且它可以工作:我尝试了更多次,只是更改了 maven war 插件的版本,所以我很确定问题就是这样。
我错过了什么吗?这是 Maven 战争插件的已知错误吗?我是否试图以正确的方式获得结果(过滤该文件)?谢谢。
maven - Maven 战争插件复制任意文件
我很抱歉这肯定是基本的 maven/war 插件,但我完全不是 maven 用户。我只需要将这件事破解到一个基于 maven 的项目中。
我需要做的是将一个(基本上是任意的)目录和文件复制到我的战争的根目录中。我需要它们在战争部署时显示为可通过 HTTP 获得的资源。
我不能简单地将它们放在源代码树中的“正确位置”。这是因为有问题的文件实际上是我项目的源文件。我意识到这有点奇怪,但这是一个文档项目,我需要在同一场战争中展示源代码和效果。
那么,在一般情况下,我将如何配置 Maven 战争插件以将给定目录及其内容复制到我的战争的根目录?(顺便说一句,我试图理解这个工具的文档,但它似乎是基于对 maven 的如此多的理解,感觉如果不先学习 maven 就永远不会理解它,而且我有点太刚才时间紧迫!)
许多TIA托比。