Tag: maven 2

在Maven2中,构建WAR和EAR以在单个POM中包含该WAR的最简单方法是什么?

情况非常简单。 我有一个Java webapp,我正在转换为使用Maven构建。 目前,应用程序使用Ant构建到单个WAR文件中,然后使用非常简单的application.xml将其捆绑到EAR中。 maven-war-plugin和maven-ear-plugin对我来说都很简单,而且看起来他们让我把上述视为两个截然不同的项目,将WAR项目作为EAR项目的依赖项。 这似乎有点不方便,特别是因为WAR项目的配置文件设置将针对每个环境进行更改,这似乎会强制我在每次尝试构建EAR时复制该构建调整。 所有这些都说:是否有一种简单的方法来构建WAR并将其打包到这个简单易用的EAR中? 我想避免将它们作为两个单独的项目进行维护,但同样也不愿意使用程序集来实现这一目标。

有没有办法将长时间运行(例如压力测试)分开,以便它们在Maven 2中默认不运行?

我们一直有这样的需求,我无法弄清楚如何使用库存Maven 2工具和文档解决。 我们的一些开发人员有一些非常长时间运行的JUnit测试(通常是压力测试),在任何情况下都不应该作为构建过程/每晚构建的常规部分运行。 当然,我们可以使用surefire插件的排除机制,只是从构建中删除它们,但理想情况下我们喜欢允许开发人员通过Maven 2随意运行它们的东西。

Maven:如何使用不同的属性值多次过滤相同的资源?

我们的项目使用Log4J,通过log4j.properties文件配置。 我们有多个生产服务器,可以记录到不同的日志文件,以便区分日志。 所以节点1的log4j.properties如下所示: … log4j.appender.Application.File=D:/logs/application_1.log … log4j.appender.tx_info.File=D:/logs/tx_info_1.log … 而节点2的log4j.properties看起来像 … log4j.appender.Application.File=D:/logs/application_2.log … log4j.appender.tx_info.File=D:/logs/tx_info_2.log … 我们已经使用Maven配置文件生成我们的服务器配置。 到目前为止,它包含几个不同的log4j.properties文件,这些文件仅在日志文件名中有所不同,如上所示。 我想使用像这样的资源模板文件使用Maven生成这些文件: … log4j.appender.Application.File=${log.location}/application${log.file.postfix}.log … log4j.appender.tx_info.File=${log.location}/tx_info${log.file.postfix}.log … 使用不同的${log.file.postfix}值可以轻松地多次运行Maven,以便每次都生成一个不同的日志属性文件。 但是,我想要为一个版本中的每个服务器生成一个不同的属性文件(名称/路径不同) 。 我相信这可以做到,例如通过antrun插件,但我不熟悉。 实现这一目标的最简单方法是什么?

Maven – 检测相同依赖关系的多个版本

我刚刚遇到了一个我的maven项目的两个直接依赖项的情况,它有两个不同版本的特定传递依赖项。 在我的特定情况下,我直接依赖于以下内容: org.jclouds.driver jclouds-sshj ${jclouds.version} 和 org.mule.modules mule-module-jersey ${mule.version} 这两个依赖关系都对com.sun.jersey:jersey-core有一个(深层)传递依赖,但每个依赖关系都有不同的版本。 Maven没有对此失败,甚至发出警告(或者如果确实如此,我从未见过它!)这样的事情正在发生……因此我在调试发动机版本时发生的问题之前从未注意到它 – 由jclouds依赖带来的核心导致一些事情破裂。 是否存在maven插件或其他一些工具,它会检测到这种深度传递依赖性覆盖并至少警告用户(或者maven执行失败)如果它检测到这样的冲突…即使默认的maven行为是只选择解析依赖项时出现的第一个版本?

使用Maven 2和Glassfish 3对EJB进行unit testing

我一直在尝试设置我的应用程序,以便我可以整天测试它的EJB,但我似乎无法通过看似简单的问题。 我在NetBeans 6.9中设置了标准的Maven Web应用程序。 我已经自动为其中一个EJB生成了unit testing,但每当我去运行它时,我都会收到错误消息: Testcase: initializationError(com.example.ExampleTest): Caused an ERROR Absent Code attribute in method that is not native or abstract in class file javax/ejb/embeddable/EJBContainer java.lang.ClassFormatError: Absent Code attribute in method that is not native or abstract in class file javax/ejb/embeddable/EJBContainer at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632) at java.lang.ClassLoader.defineClass(ClassLoader.java:616) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) 我已经研究了这个,我很确定问题是我的pom当前指向一个只包含API的jar javax javaee-web-api 6.0 […]

测试类在依赖模块中扩展测试类

我在一个模块中有一个测试类,它在一个依赖模块中扩展了另一个测试类。 如何将依赖项的测试代码导入依赖模块的测试范围? 为了文盲,我有两个模块,“模块一”是“模块二”的依赖。 SubTestCase是TestCase的子类。 模块一 \ SRC \测试\ java中\ COM \示例\ TestCase.java 模块二 \ SRC \测试\ java中\ COM \示例\ SubTestCase.java 但是构建失败了,因为“module-one”的测试代码没有被导入“module-two”,只是主代码。

如何从maven SNAPSHOT存储库下载SNAPSHOT版本?

所以我有一个项目,我定期发布maven没有问题。 我现在想要提供这个项目的SNAPSHOT版本。 所以我做’mvn clean deploy’。 一切正常,如下所示: [INFO]从sonatype-nexus-snapshots中检索以前的内部版本号上传: https ://oss.sonatype.org/content/repositories/snapshots/me/soliveirajr/menta-regex/0.9.6-SNAPSHOT/menta-regex-0.9 .6-20111010.153035-2.jar 5K上传(menta-regex-0.9.6-20111010.153035-2.jar) 我去我的sonatype经理,我可以找到快照: 但是现在当我尝试使用这个快照作为对另一台机器中某些其他项目的依赖时,我得到: me.soliveirajr menta-regex 0.9.6-SNAPSHOT 失踪: 1)me.soliveirajr:menta-regex:jar:0.9.6-SNAPSHOT 尝试从项目网站手动下载文件。 然后,使用以下命令安装它:mvn install:install-file -DgroupId = me.soliveirajr -DartifactId = menta-regex -Dversion = 0.9.6-SNAPSHOT -Dpackaging = jar -Dfile = / path / to / file 或者,如果您托管自己的存储库,则可以在那里部署文件:mvn deploy:deploy-file -DgroupId = me.soliveirajr -DartifactId = menta-regex -Dversion = 0.9.6-SNAPSHOT -Dpackaging = jar […]

Axis2客户端的最小类路径是什么?

我想用Maven2构建一个Axis2客户端(我只访问一个远程Web服务,我没有实现一个!),我不想在我的项目中添加21MB的JAR。 当我用ADB转换WSDL时,我需要在我的pom.xml中编译代码?

OSGi – 这项技术有多成熟?

我有一个要求,我需要在不同的基于Spring的Struts 2应用程序之间共享一些Web资源( jsp , html , js , images , css等)。 并且似乎OSGi可以用来实现这一目标吗? 有人可以给出一些关于如何用OSGi实现这一目标的指示吗? 其次我想知道OSGi足够成熟,可以用于生产应用程序? 提前致谢! 编辑:我经历了这篇文章,似乎人们可以跨Web应用程序共享一个Web包。 唯一的区别是他们用Spring MVC做到了。 我想知道这是否可以通过Struts2应用程序实现? 编辑2:我基本上不清楚以下内容: ‘shareable-bundle’(包含要共享的Web资源)是否为.war打包。 如果是,那么将从哪里形成最终的Web上下文,因为该捆绑包将再次与主“web”应用程序共享? 我期待最终的Web上下文是由’shareable-bundle’和’main’Web应用程序的合并而形成的。 它会自动发生吗? 有任何想法吗?

如何将maven项目版本放入war文件清单中?

我需要让Maven将POM文件中的版本号插入位于/WEB-INF/manifest.mf下的WAR文件中的清单中。 我该怎么做呢? 我能够使用maven-jar-plugin轻松地在JAR文件中提交文档以进行此操作,但这不适用于WAR文件。 谢谢您的帮助!