问题标签 [exec-maven-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 从已部署的工件运行主类
我不明白。我已经将我的 pom.xml 设置为使用 Maven exec 插件,这样我就可以使用正确的类路径、-D 定义和 -javaagent 来执行我的项目中的一些类。因此,从带有内置类的外壳 ./target/classes 等。我可以使用运行 main() 方法
到目前为止一切都很好。
现在我想发布我的项目(一个 jar 工件),并且我仍然希望能够使用我在 pom.xml 中放置的配置来运行具有正确参数等的类。我该怎么做?有没有什么住的方法
当我只有 MyArtifact.jar(或其中包含 MyArtifact.jar 的 Maven 存储库)时?
我尝试了以下方法:
获取具有依赖项的 jar:get 目标并解压缩。我无法用它做任何事情,因为 pom.xml 似乎最终出现在工件 jar 中的 META-INF/maven 中。有什么使用方法吗?
创建一个虚拟 pom,我想在其中运行我的项目,只依赖我的项目工件。然后我可以使用 exec:java 运行主类,但它不使用我的项目 pom.xml 中的配置。
谢谢。
maven-2 - 如何跳过 Maven 子模块构建
我有类似的项目
当我在项目上运行 mvn clean install 时,所有顶部和子模块都会构建。但是我希望maven不要执行child1,child2。我怎么能做到这一点。我发现使用配置文件我可以做到这一点。但是怎么做?我可以在 submodule1 pom 中做一些事情,以便 child1, child2 从 maven 阶段中排除吗?
java - Maven exec:多模块项目的java目标
我试图在一个简单的两模块项目上运行exec-maven-plugin
目标exec:java
,其中一个模块依赖于另一个模块。到目前为止,我找不到有效的配置。这是一个简化的测试用例:
这是父pom:
module1
的绒球:
module2
的 pom:4.0.0
此项目从顶部编译成功,但运行mvn exec:java -Dexec.mainClass=myMain
失败:
配置此项目以允许exec:java
查看的正确方法是什么MyMain
?
编辑:如果您想自己尝试一下,这是一个要点:https ://gist.github.com/2950830
编辑:澄清:我知道有可能mvn install
然后exec:java
从module2
's 目录运行或使用-pl
顶部的标志。但是,我想避免运行mvn install
. 无需修改我的本地存储库即可在多模块项目中运行此目标。就像mvn compile
多模块项目“正常工作”一样,其他目标/阶段也应该如此。
maven - 如何使用 Maven 执行当前(顶级)目录中的文件?
我有一个可以成功构建的项目mvn clean install
。我还可以使用mvn exec:java 命令执行包含在 src/com/mycompany/myproject/ 文件夹中的脚本,方法是将 POM 中的“mainClass”完全限定为:
但我想执行项目顶级文件夹中包含的脚本,即包含 pom.xml 文件的同一文件夹。这个类是一个示例应用程序,它演示了正在构建的项目的功能,它实际上并不是项目本身的一部分,这就是它不包含在 src/com/mycompany/myproject 中的原因。如果我简单地输入 mainClass <mainClass>MyClassInCurrentFolder</mainClass>
,则找不到它。
我想我可以创建一个完全独立的 Maven 项目,它只包含 src/com/mycompany/myproject/ 下的这个类,并使用另一个项目作为依赖项。但我宁愿不这样做,毕竟它只是一个非常简单的项目演示应用程序。
关于如何使用 Maven 在顶级文件夹中执行此文件的任何想法?
maven - 如何将控制台输出附加到maven中的文件?
我正在使用 exec-maven-plugin 执行一些特定的测试。我想将测试的控制台输出附加到文件中,而不隐藏控制台。
maven 中是否为该任务提供了任何支持?
在测试开始之前,我使用 maven-antrun-plugin 执行记录器任务。那没有用。
我使用 'tee' 命令使用 exec-maven-plugin 执行。这似乎也不起作用。
我检查了使用带有 maven 的 log4j。但由于我是 log4j 日志记录的新手,我无法用它调试问题。
还有其他方法吗?
java - 你可以为 maven exec 插件定义一个 exec 和 java 目标吗?
我正在尝试使用 maven exec 插件执行几项任务。一种是运行脚本来生成应用程序将使用的一些外部数据。第二种是在编译阶段运行一段java代码来做一些方便的工作。
但是当我运行时:
我得到错误:
或类似的错误表明参数“mainClass”丢失或无效。
maven - 确保在编译阶段下载了 exec-maven-plugin
我们有一个 maven 项目,我们在其中使用几个 linux bash 脚本来输入我们的 java 应用程序的各种条目。我们已经通过 exec-maven-plugin 解决了这个问题,所以脚本通常看起来像:mvn -e -o -q exec:exec -Dexec.executable="java" -Dexec.args="..."。出于某种原因,我们被限制使用脱机标志 (-o)。
我的问题是:如何确保在编译阶段下载了 exec-maven-plugin?存在开发人员没有下载 exec-maven-plugin 的风险,并且由于 exec-maven-plugin 与 maven 脱机标志一起使用,如果它不存在,它将不会被下载。
maven - 即使脚本使用“开始”,使用 Maven exec 插件启动 Windows 批处理脚本也会阻止构建
我正在尝试在自定义容器的顶部执行我的应用程序部署的集成测试。由于我的容器是自定义的,我不能使用 Maven Cargo 插件来设置容器。
我的容器:
- 必须通过适当的 bat 文件启动,该文件位于运行测试的机器的路径中。
- 可以手动关闭,因为我有一个包含所有集成测试的 maven 模块,即使有一天我想知道在测试完成后如何关闭进程。
我的问题是我必须在不同的进程中运行我的容器,因为它需要在执行测试时继续运行。此外,我的测试中有一个 API,可以让我等待容器准备好(一种超时查找)。
我已将以下几行添加到我的 pom.xml
这将调用一个脚本,其中仅包含
开始调用 gs-agent.bat
但是 mvn exec 插件被卡住了,我的测试没有运行。根据如何从我的 Java 应用程序运行批处理文件中的建议?,我修改了我的 pom.xml 如下:
但这似乎并不能解决问题:
cxf - apache-cxf 客户端与 exec-maven-plugin 一起使用,但不能从外部使用
我在尝试在 java 中创建 WS 客户端时遇到问题。
我使用的库是apache-cxf 2.12。这是一个旧版本,但我希望将 Web 服务添加到已经运行并使用 Spring 2.5.6 的 JBoss 应用程序中,所以这个org.apache.cxf版本使用相同的 spring 版本。
但问题是(我知道很通用,与 maven、netbeans 和 apache-cxf 有关)
当我从 netbeans 执行我的客户项目(maven proyect)时,它工作得有点好。当我尝试使用脚本(bot windows an linux)运行此类时,它给了我这个错误:
“调用失败,出现以下情况:org.apache.cxf.ws.policy.PolicyException:无法满足任何策略替代方案。”
Java版本是一样的,我把所有的依赖jar复制到lib dir然后添加到%classpath%
那么,当我使用 maven org.codehaus.mojo:exec-maven-plugin:1.2.1:exec执行我的示例程序时,它可以工作,而当我使用 srcipt 运行它时它不会有什么不同?(我已经检查了所有依赖项,java 版本,...)
我猜它必须与 JAX-WS o JCE (Java Cryptography Architecture) 初始化有关。
¿ 有没有办法在运行 java.exe 时查看 %classpath maven 正在创建什么?
有效的 Maven 脚本:
谢谢
eclipse - 压缩打包前的Maven maven-exec-plugin执行
我正在构建一个 Maven+Tycho Eclipse RCP 应用程序,我想在将产品压缩为 zip 之前以及在二进制文件被压缩以在存储库/二进制文件中分发之前在 OS X 上运行我的 codesign maven-exec-plugin。
所以我认为这一步应该在编译和打包之间,但我很难通过反复试验。它应该绑定到哪个生命周期构建阶段?
我的 maven-exec-plugin 目前看起来像这样(应用程序得到了代码签名,但在 zip 已经创建之后):