问题标签 [maven-jar-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.
java - 我应该如何在 maven 项目中选择配置文件的位置
我正在构建一个依赖于一些配置文件的命令行工具。
在开发时,我将这些文件放在 下src/main/resources
,并由 访问getClass().getResourceAsStream("/config-file-name")
,效果很好。
我选择 maven-assembly-plugin 来构建具有所有依赖项的 jar。
配置文件都包装在jar中,但我想将它们分开。
所以,我添加以下配置,
完成此操作后,配置文件与 jar 一起出现,而不是包装在 jar 中。
但是我的代码现在无法访问这些文件。
我是否需要更改在代码中访问文件的方式?
还是我不需要将这些文件放入src/main/resources/
任何替代方案?
如果有人知道,请帮助。
谢谢。
更新:最后,我放弃使用 maven 资源文件,而是将文件路径默认设置为与 jar 相同的路径,一切正常,除了 Eclipse 抱怨。
由于我想将配置文件移出 jar,并且不希望它位于 target/classes 文件夹中,所以我使用<targetPath>..</targetPath>
将配置文件移动到与 jar 文件相同的目录。
当我重新生成 Eclipse 项目设置时,Eclipse 说:不能在输出文件夹“project/target”内嵌套输出文件夹“project/target/test-classes”。
有人帮我吗?
java - 如何使用 Maven 创建具有完整依赖项的独立应用程序?
我有一个使用 Maven 2 构建的桌面 Java 应用程序(但如果有帮助,我可以升级到 Maven 3),并带有许多开源依赖项。我现在正在尝试将其打包为独立的,以使其可供最终用户使用,而无需安装 maven 或其他任何东西。
我已经成功地使用 maven-assembly-plugin 构建了一个包含所有依赖项的 jar,但这并不是我真正想要的,因为在使用 LGPL 库时,您打算将您正在使用的库作为单独的 jar 重新分发。
我希望 Maven 构建一个 zip,其中包含一个带有我的代码的 jar 和一个MANIFEST.MF
引用我需要的其他 jar 以及其他 jar 的 jar。这似乎是标准做法,但我不知道该怎么做。
这是我的 pom 的摘录
编辑:采用 Kals 的想法
创建了一个名为descriptor.xml的文件
和 pom 包含:
现在维护jar并将它们全部放在lib文件夹中,包括我自己的代码
java - 如何在 maven-shade-plugin 创建的 Jar 中包含测试类?
我正在尝试使用 Maven 将我的测试类打包到一个具有依赖项的可执行 jar 中,但我正在努力做到这一点。
到目前为止,这是我的 pom.xml:
当我执行mvn clean package
构建创建3个罐子:
- executable-tests-1.0.jar // 由 mvn package 阶段构建
- executable-tests-1.0-teststjar // 由 jar-plugin 构建
- cucumber-tests.jar // 由 shade-plugin 构建
Cucumber-tests.jar
包含info.cuke
依赖项,但不包含executable-tests-1.0-tests.jar
.
我做了各种各样的事情来尝试包含测试类,但没有任何效果,我错过了什么?
编辑:如果有人喜欢玩它,我已经将我的示例项目推送到 GitHub :) https://github.com/C0deAttack/ExecutableTests
eclipse - Maven jar 依赖和关系
我试图搜索现有问题,但找不到任何问题 - 感觉我的问题很简单,但可能是因为它非常具体,我无法在任何地方找到答案。
无论如何 - 我有 2 个 Maven 项目,其中第二个项目取决于/需要第一个类的某些类。在某些情况下,我希望依赖于 JAR 而不是项目依赖。
我通过使用 maven-jar-plugin 创建一个额外的 jar 解决了这个问题,其中包含了所需的类。jar 已正确创建并在 ${project.build.directory} 中输出。但是项目 A 的 pom 位于同一目录中,这对我和项目 B 来说都是痛苦的,原因是项目 A 中使用的依赖项。(有没有办法忽略位于 ${project. build.directory} ??? 喜欢:
)。
现在我将系统范围用于依赖项,并在添加系统路径后正常工作。尽管在任何可能的地方都必须避免使用示波器系统。Systempath 让我很烦,因为这不是一个好习惯,而且因为绝对路径。
我知道我可以通过使用将创建的 jar 安装到存储库中
mvn 安装:安装文件
但我想尽可能地自动化这个过程,你有什么建议?
提前致谢
java - 在另一个 Maven 项目中包含一个 Maven 项目的 Jar 不起作用,但在另一个 Maven 项目中包含该项目有效
我有 2 个项目,即Project_1
和Project_2
. 这两个项目都是Maven
,我正在使用 Netbeans。
我想包括我正在这样做Project_1
的罐子。Project_2
问题是当我包含 jar 时,我没有收到任何编译时错误,但是NoClassDefFoundError
在运行时出现异常。
当我通过执行此处提到的步骤将其包含在内Project_1
时。(开放项目示例)。我没有收到任何错误。运行时和编译时都不是。Project_2
你能解释一下我在这里缺少什么吗?
更新
Project_2
部署在不在我的本地机器上但Project_1
在我的本地机器上的服务器上。
包含在Project_1
项目Project_2
中是为了在我的本地机器上进行测试。
java - maven-jar-plugin 中的 NPE
Maven构建期间发生的错误:
[错误] 无法在项目 cc-distFS 上执行目标 org.apache.maven.plugins:maven-jar-plugin:2.4:jar (default-jar):组装 JAR 时出错:无法读取文件系统属性:/home/user /trunk/src/cc-distFS/pom.xml:引用目录失败:'/home/user/trunk/src/cc-distFS/pom.xml':设置环境变量时出错:NullPointerException -> [帮助1]
maven -X 包
有人知道这是什么意思吗?
PS:
用于模块 cc-distFS 的 pom.xml:
PS:在我制作 fsck 之后,Bug 消失了。
maven - maven-jar-plugin,包括上层目录
构建 POM 的一部分
在目标 jar 中,我拥有来自根目录的所有 wsdl、来自根目录的 xsds 和源目录。
但 jar 中没有 configuration.doc 文件。
有任何想法吗?
maven - 如何配置 maven jar 插件以排除配置文件上的属性
我的 pom 中有这个配置
我使用配置文件来处理从本地环境到生产环境的不同行为。使用本地配置文件执行 mvn install 时是否可以不激活排除项?我试图像这样在本地环境中设置一个空白属性,但插件抱怨。
maven - Maven 未能执行目标 org.apache.maven.plugins:maven-jar-plugin
如下所示,运行时出现错误mvn package
这是我的 pom.xml。我摆脱了不必要的东西,但它仍然没有工作..
maven - 无法禁用空 JAR 的生成(maven-jar-plugin)
有时,我的 Talend Open Studio 组件有资源但没有 Java 源(它们是纯粹的元数据组件)。在这种情况下,我需要禁用 JAR 文件的生成。
我以这种方式配置了 maven-jar-plugin:
但我仍然得到 ${project.name}.jar 文件,其中包含 pom.properties、pom.cml、清单和一个仅包含“class {}”的空文件 App.class
虽然我可以使用以下方法禁用所有 Maven 内容的包含:
我仍然得到一个包含清单文件的 JAR
是否有一些配置参数我配置错误?