问题标签 [maven-3]

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.

0 投票
1 回答
2194 浏览

maven-2 - 初始化期间依赖标记内的各种参数的标记化失败

以下依赖项是我的 pom.xml 文件的一部分,通过在我的 profiles.xml 中选择适当的数据库配置文件,这些值将被正确替换。以下定义适用于 Maven 2.2.1,并且在迁移到 Maven 3.0.2 后已停止工作。如何解决这个问题?

错误

0 投票
0 回答
1540 浏览

maven-2 - Maven 多模块 EAR 文件的“未解决的编译问题”

war 模块中的 JSP 不会编译,因为 jar 模块在编译时不在类路径中。

EAR 模块依赖项

EAR 插件设置

WAR插件(在war模块中)

0 投票
2 回答
14042 浏览

maven - 如何在 Maven3 中指定活动配置文件

我们的应用程序由各种活动配置文件(比如 A1、A2、A3、A5 ...)组成,这些配置文件分别在profiles.xml 文件中定义。Maven 3 期望将所有配置文件信息存储为 pom.xml 文件本身的一部分。

我应该如何在 pom.xml 文件中指定活动配置文件的列表,这样我就可以避免在命令行中指定它们(例如 mvn -PA1,A2,A3,A5)

0 投票
4 回答
13060 浏览

java - 为什么“mvn compile”需要“test-jar”依赖

test-jar在多模块项目中使用依赖项时遇到问题。例如,当我声明cleartk-syntax模块依赖于cleartk-token模块时test-jar(完整代码在这里):

如果我mvn compile使用 maven 2 运行,我会收到以下错误:

如果我使用 maven 3,我会收到错误消息:

在后一种情况下,我特别困惑,因为我认为它应该寻找 type 的 artifact 而test-jar不是 type jar

使用 maven 2 或 maven 3,我可以通过运行mvn compile package -DskipTests. 使用 maven 3,我还可以通过运行mvn compile test-compile.

但是为什么 maven 2 或 maven 3 在该阶段寻找test-jar依赖项compile?难道不应该等到test-compile寻找这种依赖的阶段吗?

更新:答案是在我的编译阶段使用的 maven-exec-plugin需要对 scope:test 中的工件进行依赖解析。我创建了一个功能请求来删除 scope:test 依赖项

0 投票
2 回答
6768 浏览

eclipse - 从 Maven 构建中(暂时)排除源的“正确”方法是什么,是否有一种简单的方法可以从 Eclipse 中做到这一点?

我是 maven 的新手,而且我对 Eclipse 也没有很多经验。

要在 Eclipse 中从构建中排除 java 文件,我右键单击这些文件并选择构建路径 -> 排除。这对于 Eclipse 中的“on-save”编译非常有用,但它不会传播到 maven 项目,所以当我使用 mvn install 构建我的项目时,它会尝试编译排除的源。

我做了一些搜索,结果指向编译器插件和 <excludes> 功能,但是编辑 maven 项目文件以暂时从构建中排除文件似乎有点尴尬。

从 Maven 构建中(临时)排除源的“正确”方法是什么,是否有一种简单的方法可以通过 m2eclipse 插件或其他方式从 Eclipse 中做到这一点?

0 投票
2 回答
756 浏览

variables - 如何使用 _profiles_ 在 Maven3 中实现变量依赖版本?

我们需要使用不同版本的 deps 构建项目(在此示例中,Postgres 8 和 Postgres 9)。此外,我们的开发人员在他们的计算机上拥有不同版本的数据库。

我试图做这样的事情:

但它没有用。配置文件变量根本没有覆盖 pom 变量。此外,即使使用 ~/.m2/settings.xml,我也无法做到这一点。

有谁知道如何做到这一点?谢谢。

0 投票
2 回答
1369 浏览

java - 使用 maven 执行主类并保存输出

我目前正在将我的 ANT 构建文件转换为 maven,并且遇到了一些问题。

如果您运行它们的主方法,我有一些类会自动为自己生成文档文件。我的构建过程的一部分是运行这些主要方法,将输出保存到文本文件,然后将它们上传到项目网站。

我的 ANT 目标看起来像这样:

有没有办法在 Maven 中做同样的事情?

0 投票
1 回答
160 浏览

maven-2 - 是否可以通过 Maven 属性获取依赖项的最终名称?

可以获得当前项目的最终名称。

这对依赖项也有可能吗?我正在寻找这样的东西:

基于此示例 pom 依赖项剪切。

最终名称可能是 stackoverflow-question-1.6.0-SNAPSHOT,但由于锁定的快照或版本,这可能是可变的,我不想动态读取它。你能帮我解决这个问题吗?非常感谢。

0 投票
2 回答
514 浏览

maven-2 - 将大型版本部署到 Maven Central

  1. Maven 中央存储库上的工件是否会过期?
  2. 每个工件的大小是否有大小限制?

我问是因为有些工件会变得非常大,我担心这可能会导致问题。

我给你一个简单的例子。我的库依赖于 Boost C++ 库。Boost 以 241MB 的源(压缩后的 75MB)开始。编译它时,每个编译器/平台组合(即 Visual Studio 2010、Windows、32 位)最终会得到 2.78GB 的​​二进制文件(200MB 压缩)。然后,您必须将该数字乘以您要支持的平台数量。

一方面,我不希望用户自己构建 Boost,因为这是一个非常痛苦和漫长的过程。另一方面,我觉得每次发布上传 GB 的工件并不是正确的方法;)

我的库只依赖于 Boost 的一个非常小的子集,所以从技术上讲,我可以只上传那个子集(每个平台的成本约为 10MB)。我担心长期会发生什么。如果更多的人开始使用 Boost 并且每个人都上传他们所依赖的子集会发生什么......?

有关如何拆分 Boost 模块的示例,请参阅http://sourceforge.net/projects/boost/files/boost-binaries/1.44.0/ 。如您所见,单个模块非常小。

之前出现过类似的主题:http ://maven.40175.n5.nabble.com/Best-practice-re-releasing-large-assembly-artifacts-td3250739.html但在我的情况下,我没有尝试部署程序集进入中央。我正在尝试部署碰巧非常大的单个工件。

让我知道你的想法。

0 投票
1 回答
2642 浏览

eclipse - 将 m2eclipse 用于具有父 pom.xml 的多个项目

我有多个 Maven 项目,它们各自的 pom.xml 是父 pom.xml。

现在,从 Eclipse 中,我可以右键单击 common-project 或 application-project,我在那里看到 Run As Maven... 选项。但是当我需要为所有项目运行一个特定目标时,即在父 pom.xml 中,如果不使用命令行,我不明白该怎么做?