问题标签 [maven-module]
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 多模块库构建
我正在使用 Maven 系统开发库,该库发布在 Nexus 存储库中。在 nexus(以及 maven 构建)中,该项目产生最终jar
命名<projectName>-<version>.jar
- 这正是我想要的。
现在,我决定将库拆分为 maven 模块,因此顶级pom.xml
有<packaging>pom</packaging>
. 该构建也不会产生 final <projectName>-<version>.jar
,而是<moduleName>-<version>.jar
为每个模块产生。
我想要实现的是将项目拆分为模块并能够生成最终<projectName>-<version>.jar
包含定义的模块。这可能吗?迁移到 Gradle 是否可以解决此问题?
java - 如何使用模块化 Maven 项目管理版本号?
我有一个相当典型的插件架构,看起来像这样(只是更大):
父项目定义了版本号,打包为 apom
并在其中定义了模块pom.xml
:
所有的子模块到处都有很多对父版本号的引用。以下是主模块外观的示例,可让您了解一下:
我们已经厌倦了不得不在每个父块、每个工件块以及每个模块的每个依赖块中的每个版本中一遍又一遍地更改版本号。在某些情况下,有人使用搜索/替换来命中其他文件并搞砸了构建。我们尝试使用属性,但由于某些荒谬的原因,这在父定义中不起作用。
父级中定义的版本号是我们唯一关心的地方。我们甚至不需要子模块来拥有版本(或工件,就此而言)。我们可以在其他 Ant 项目中做到这一点。我们可以在其他 Gradle 项目中做到这一点。我无法想象这在 Maven 中是不可能的,所以我猜我们错过了一些东西。
我们如何在一个地方定义项目的版本号,并将其用于我们模块中的所有父级、工件和依赖项部分?
maven - 错误:/var/jenkins_home/workspace/gara-bo@script/Jenkinsfile 未找到
我有一个 Maven 多模块项目。我创建了一个管道来清理和部署我的项目。当我运行管道时,我得到以下输出:
为什么项目在 gara-bo@script 而不是 gara-bo 下签出?在服务器上,我有两个文件夹:gara-bo 和 gara-bo@script
但是 gara-bo@script 中的文件只是符号链接,因为当我尝试在 gara-bo@script 下读取 JenkinsFile 的内容时,这是不可能的。
你知道吗,请问我该如何纠正?
maven - 如何在 Maven 版本中跳过模块:准备
我想使用 Maven 发布插件来发布我的 Eclipse 插件,但是在 release:prepare 步骤中,我不得不跳过更新某些插件的版本号。这是因为它们是其他 3rd 方插件所依赖的插件的修改版本。
我尝试过的是明确地查看现有版本的版本:
这对我不起作用,发布插件仍然试图更改版本。
接下来我尝试将插件分离到配置文件中,并且只调用 release:prepare 为我想要更改的那些:
pom.xml
命令
这样做的缺点是在跳过的插件中没有更新对父 pom 的引用,这再次使我的构建中断。
如何妥善处理?
maven - 未指定模块时 Maven 插件崩溃
database:run
当我尝试在未指定定义它的模块的情况下运行Maven 插件目标时,它会崩溃。
我的项目有四个模块(main
、core
、cli
和web
),我只在其中两个(cli 和 web)中添加了一个数据库插件,采用标准形式:
我运行时效果很好:
但是如果我省略模块的列表会崩溃:
在当前项目和存储库中可用的插件组 [org.apache.maven.plugins, org.codehaus.mojo] 中找不到前缀“数据库”的插件...
我是否还需要在main
模块/项目中定义插件,这样它就不会崩溃?但这没有意义……不是吗?这是预期的行为吗?如果可能的话,我更喜欢较短的命令行。
java - 在 Maven 中将本地 Jar 添加到父模块
我的父模块构建良好,但父项目中 /lib 文件夹中的 jar 没有被复制到 .m2 目录。没有从提到的依赖生成 jar 文件“sqljdbc”;请参见下面的 parent.pom.xml 文件
让我知道我是否缺少某些东西。此外,我正在关注 https://dzone.com/articles/maven-multi-module-project-with-versioning 生成模块
java - 在没有公共父级的子模块中重用 maven 属性
在 maven 多模块项目中,有一个子模块需要从外部父项目继承。因此它不能像其他子模块一样从父模块继承,并且那些不能继承该外部父模块(因此使外部项目成为整个层次结构的父模块不是一种选择)。
有没有办法消除此类模块与层次结构的其余部分之间的属性重复?
parent
pom.xml
child
pom.xml
stepchild
pom.xml
maven - Maven MultiModule 本地安装不更新
我正在处理一个多模块项目,其中项目 A、模块 B 和模块 C 都有自己的 pom 文件。模块 A 和模块 B 引用 ProjectA pom 文件。
我在 moduleB 的 pom 文件中使用 ModuleA 作为依赖项。
我在 moduleA 中添加了几个包并执行了 mvn clean install
它使用我所做的最新更改更新了我的 .m2 存储库。
然后我在 moduleB 上进行了 mvn clean install,但是 moduleB 仍然无法识别模块 A 中的最新更改。
我尝试了以下方法,但对我有用
- 删除 .m2 文件夹并进行 Maven 全新安装
- 在根文件夹上构建 mvn clean install
- 使用 Intellij,使缓存无效并重新启动,启用更新快照等