问题标签 [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 中建立了一个模块化项目,其父项目有多个子项目。
pom.xml
父母看起来如下-
pom.xml
子项目如下所示-
现在,我需要在一个单独的不相关项目中使用其中一个子项目作为库。新项目的 pom 如下所示。
我不断收到以下错误
Illegal character in path at index 57: http://repo.maven.apache.org/maven2/com/company/parent-app/${parent-application.version}/parent-app-${parent-application.version}.pom
原因似乎是我从 prent-app 继承了 child-model 中的 version 属性。
有没有办法克服这个问题?或者我是否需要在各自的 pom.xml 中为每个子模块提供版本,并且不能从公共父级继承。
提前致谢。
maven - 如何告诉 Maven 编译自动生成的 Maven 模块?
在我正在处理的一个项目中,我们在一个名为 api/ 的文件夹中自动生成接口 API,该文件夹包含几个子文件夹,其中每个文件夹都有一个能够编译模块内容的 pom 文件。
基本上 pom.xml 触发代码生成器,然后生成所有 api/* 模块。当我在 build/ 文件夹中运行 maven clean install 时,api 文件夹是空的,因为它将在 generate-code Maven 阶段由代码生成器填充。
有没有办法告诉 build/pom.xml 在同一个构建中处理 api 中的模块(名称已知)?
如果我指定一个<module>
不存在的,maven verify 会抱怨。
谢谢
java - 如何构建完整生成的 Maven 模块
我有这个经典的项目树:
这个 pom.xml 使用自己的 pom.xml 生成一个完整的 maven 项目,如下所示:
是否可以使用这个简单的命令生成和构建这个生成的模块?
java - 尽管我将其设置为依赖项,但我的 Maven 模块无法在我的其他 Maven 模块中找到类
我有两个 Maven 模块。一个命名tests
一个ws-ejb
。
在tests
pom.xml 中,我将 设置ws-ejb
为依赖项,因此我可以在测试中使用 EJB。
这是我的tests
maven 模块的 pom.xml 的缩短版本:
但是当我运行测试时,我收到一个编译错误,指出找不到我的 bean,但我将它作为依赖项,并且我的 IDE 没有抱怨丢失的 bean,但 maven 会:
该包com.myproj.beans
确实存在于ws-ejb
我在模块中设置为依赖项的 maven 模块中tests
。那么有什么问题呢?
编辑
这是位于tests
maven 模块下的 MyTest.javasrc/test/java/com/myproj/MyTest.java
java - maven - 关于使用多模块(jar,war,...)项目的建议
我有以下 Maven 组织:
到目前为止,我一直在使用 Maven 如下(全部在根目录中执行):
尽管这很有效,但我不确定这是否是首选方式。在第一步中,我正在安装所有项目,但实际上,只有 jar 项目a
并且b
应该安装。无需安装c
和d
项目。
c
尽管安装and并没有什么坏处d
,但是否有更好的使用 Maven 来避免这种情况?我总是可以手动安装a
and b
,但这当然会影响模块的好处(自动检测依赖顺序,仅举一个好处)。
java - maven - 关于使用多模块(jar,war,...)项目的建议
我有以下 Maven 组织:
为了构建和部署c
项目,我这样做:
为了构建和执行d
项目,我这样做:
因为d
有问题。马文报告:
这确实是正确的,父pom.xml
级没有配置exec
. 只有d
项目具有exec
.
这个问题是问题maven 的一个小变种 - 关于使用多模块(jar,war,...)项目的建议,所以我决定专门为它专门提出一个问题。
为什么 Maven 会尝试exec
在父项目上?
更新
我在以下三个 pom 文件中抽象出了同样的问题:
父pom:
一个pom:
b pom:
我正在执行的命令是:
maven - 带有 maven 模块的自定义 mojos
我有一个简单的 Maven 多模块项目
在第一个项目中,我定义了一个自定义 MOJO,我可以这样调用
com.mycompany:child1artifactid:mojoname
是否可以从子项目中调用相同的 mojo,因为它是一个依赖项并捆绑为第二个项目的 jar?
com.mycompany:child2artifactid:mojoname
maven - Maven inherit parent module resources
In Maven, is it possible to load resources in a child module from the parent project?
I have resources in the parent project src/main/resources
which I would like to be made available for the child projects. Ideally the child projects could override any of the resources.
spring-boot - Spring Boot 与 Maven 多模块项目
我有一个 Maven 多模块项目,其设计类似于以下 SO 帖子中的第一个答案: Multi-module maven with Spring Boot
现在我想要一个通用的 maven 模块,它可以包含一些供多个微服务使用的模型。如果我将这个公共项目作为第一级父 pom 的子项目(以便所有通过引导注入的依赖项,如 jpa、jackson 等都可用于公共),那么 STS/Spring 将其检测为引导应用程序并抱怨没有 Main Maven 构建类。
有人可以建议我如何实现这一目标吗?
当前代码:
父 pom.xml:(仅包括相关部分)
子(公共模块)pom.xml(仅相关部分),不是启动应用程序:
ant - 从包含其他模块的 maven 模块运行 ant
我有一个如下目录结构:
在我的 POM 文件中,我正在尝试使用调用 ant 文件
我的 build.xml 包含
但是,当我mvn install
从运行时/root/ui
,出现以下错误:
[错误] 无法在项目 ssui-parent 上执行目标 org.apache.maven.plugins:maven-antrun-plugin:1.6:run (create-intellij-project-files):发生 Ant BuildException:出现以下错误时执行这一行: [ERROR] java.io.FileNotFoundException: /root/ui/ssui/build.xml (No such file or directory) [ERROR] -> [Help 1]
它似乎是从它所在/root/ui/ssui
的地方而不是从哪里运行它pom.xml
。
调试完成
如果我将我
pom.xml
的改为指向../build.xml
,则错误消息变为:java.io.FileNotFoundException: /root/build.xml (No such file or directory)
如果我删除 中的子模块定义
/root/ui/pom.xml
,则路径被正确识别(但我需要子模块)如果我将 build.xml 引用更改为
${basedir}/build.xml
,我会得到同样的错误:java.io.FileNotFoundException: /root/ui/ssui/build.xml
如果我删除子模块它也可以工作通过在(as ) 和(as )中创建一个
ui.rootdir
属性并从. 同样的错误。ui/pom.xml
${basedir}
ui/ssui/pom.xml
${basedir}/..
${ui.rootdir}/build.xml
ui/pom.xml
欢迎提出任何建议,但我无法重组我的目录,除非要复制的文件夹所在的位置。我确实在多模块设置中查看了 maven ${basedir} 的用法,但没有弄清楚它将如何解决我的问题。
我创建了一个说明问题的 zip 文件。如果您运行mvn install
,您会注意到子模块中发生错误,尽管它在顶级模块中运行良好(并将文件复制到我的文件夹中)