Tag: maven 2

maven中的多个部署

我们有一个内部的神器库。 目前所有快照都将部署在那里。 我们还希望拥有一个具有Web界面的不同服务器,并希望将创建的工件复制到其中。 对于我们的构建,我们使用Hudson,但是后构建操作“将构件部署到Maven存储库”与scp一起不起作用。 所以有一个问题是以其他优雅的方式做到这一点。 为什么maven不能拥有多个分发存储库? 有任何想法吗? 最好的方法是,如果artifactory在每次新部署后都支持(自动!)增量导出到标准maven存储库。

maven :(使用-source 5或更高版本来启用静态导入声明)

我如何使用源5? 我试过了 mvn -source 5 test 但它不起作用:-) 当我用javac编译文件时,一切正常。

在maven jetty 7插件中启用调试日志记录

我正在运行一个带有简单mvn jetty:run的java webapp mvn jetty:run ,使用最新的jetty插件,但我似乎找不到告诉jetty将DEBUG消息输出到控制台的方法(对于嵌入式jetty实例,而不是插件本身)。 它目前只输出WARN和INFO消息。 我试过设置-DDEBUG和-DVERBOSE ,但他们什么也没做。 我已经看过文档 ,但它似乎没有涵盖这一点。

maven-dependency-plugin是否比其他maven使用其他类型的工件解析?

如果我使用maven-dependency-plugin插件,那么我就无法使用版本范围。 此外,虽然较新版本在远程存储库中,但似乎未定义工件的版本。 为什么会这样? 使用maven-dependency-plugin除了maven的其他部分之外的其他一些机制来解决依赖关系? 如果是这样的话,为什么呢? 这是一个例子: 我创建了一个项目org.example:org.example.simple.project1:jar并使用版本1.0.0-SNAPSHOT,1.0.0,1.0.1和1.1.0-SNAPSHOT将它放入存储库 我现在已经按以下方式配置了依赖插件: org.apache.maven.plugins maven-dependency-plugin unpack-stuff initialize unpack org.example org.example.simple.project1. [1.0,1.1) jar true target/stuff **/*.* 如果依赖关系解析与其他依赖关系相同,那么版本应该(至少在我看来)解析为1.0.1 。 相反,我得到以下exception: [ERROR] FATAL ERROR [INFO] ———————————————————————— [INFO] version was null for org.example:org.example.simple.project1. [INFO] ———————————————————————— [INFO] Trace java.lang.NullPointerException: version was null for org.example:org.example.simple.project1. at org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:362) at org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout.pathOf(DefaultRepositoryLayout.java:47) at org.apache.maven.artifact.repository.DefaultArtifactRepository.pathOf(DefaultArtifactRepository.java:110) at org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:125) at org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:74) at […]

如何自动配置Eclipse?

从事项目工作的团队往往需要Eclipse的通用配置。 这包括常规配置和项目特定配置。 例如,通常,每个人都可能希望共享缩进,安装某些插件(例如m2eclipse,testng,egit,Spring支持)。 此外,对于项目,您可能需要特定的插件配置(例如,对于m2eclipse,设置自定义Maven设置文件,为eclipse构建事件配置额外的Maven目标),或者自定义Eclipse目标平台,甚至只是为了设置某些自定义发射器。 目前,我的团队执行一系列手动步骤,尝试正确配置所有内容。 这很乏味,容易出错,新开发人员难以遵循。 说明也往往过时。 这种配置在多大程度上可以自动化? 应该怎么做?

如何使用Maven构建SWT应用程序

我试图学习swt,我使用maven进行所有构建,并使用eclipse进行IDE。 当从maven存储库中获取swt jar时,我得到: Exception in thread “main” java.lang.UnsatisfiedLinkError: no swt-pi-gtk-3034 in java.library.path at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1709) at java.lang.Runtime.loadLibrary0(Runtime.java:823) at java.lang.System.loadLibrary(System.java:1030) at org.eclipse.swt.internal.Library.loadLibrary(Library.java:100) at org.eclipse.swt.internal.gtk.OS.(OS.java:19) at org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:63) at org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:54) at org.eclipse.swt.widgets.Display.(Display.java:112) at wenzlick.test.swt.main.Main.main(Main.java:30) 有没有人成功获得使用maven构建和运行的swt应用程序? 编辑 :我做了一点研究,发现了问题。 看看我下面的post

Hibernate,Spring和SLF4J绑定

我正在尝试使用maven2托管依赖设置一个webapp。 这是我的pom.xml 4.0.0 mtx-production mtx-production 0.0.1 org.springframework spring-core 3.0.2.RELEASE org.springframework spring-orm 3.0.2.RELEASE jar org.springframework spring-web 3.0.2.RELEASE jar mysql mysql-connector-java 5.1.12 org.hibernate hibernate-core 3.5.1-Final jar compile org.hibernate hibernate-annotations 3.5.1-Final jar compile org.slf4j slf4j-log4j12 1.5.8 jar compile log4j log4j 1.2.14 jar compile jboss-releases http://repository.jboss.org/maven2 如果我出错了,请纠正我,但这应该有用吗?! 我只是进入了我的日食这个例外 13.06.2010 16:48:15 org.springframework.context.support.AbstractApplicationContext$BeanPostProcessorChecker postProcessAfterInitialization INFO: Bean ‘dataSource’ is not eligible for […]

如何阻止Maven的validation阶段重建工件?

想象一下使用Maven构建的Java项目,我有: 一些快速运行的unit testing: 开发人员应该在提交之前运行 我的CI服务器(Hudson,FWIW)应该在检测到新提交时运行,在出现故障时提供几乎即时的反馈 一些慢速运行的自动验收测试: 开发人员可以选择运行,例如重现和修复故障 我的CI服务器应在成功运行unit testing后运行 这似乎是一个典型的场景。 目前,我正在运行: 该单元在“测试”阶段进行测试 “validation”阶段的验收测试 配置了两个CI作业,两者都指向项目的VCS分支: “Commit Stage”,运行“mvn package”(编译和unit testing代码,构建工件),如果成功,则触发: “自动验收测试”,运行“mvn verify”(设置,运行和拆除验收测试) 问题是作业2unit testing并重新构建被测工件(因为validation阶段会自动调用包阶段)。 由于几个原因(重要性降低),这是不可取的: 作业2创建的工件可能与作业1创建的工件不同(例如,如果同时存在新的提交) 将反馈循环延长到进行提交的开发人员(即他们需要更长时间才能发现他们破坏了构建) 在CI服务器上浪费资源 所以我的问题是,如何配置作业2以使用作业1创建的工件? 我意识到我可以只有一个运行“mvn verify”的CI作业,它只会创建一次工件,但是我想拥有上面描述的单独的CI作业,以实现Farley风格的部署管道。 万一它可以帮助任何人,这里是接受答案中“项目2”的完整Maven 2 POM: 4.0.0 com.example.cake cake-acceptance 1.0 jar Cake Shop Acceptance Tests Runs the automated acceptance tests for the Cake Shop web application. org.apache.maven.plugins maven-compiler-plugin 2.3.1 […]

Spring:单元和集成测试

我正在寻找使用Spring设置单元和集成测试的最佳实践。 我通常使用3种测试: “真正的”unit testing(没有依赖) 测试作为“单元”测试(内存数据库,本地调用,模拟对象,……)或集成测试(持久数据库,远程调用,……)运行 测试仅作为集成测试运行 目前我只有第二类测试,这是棘手的部分。 我设置了一个基础测试类,如: @ContextConfiguration(locations = { “/my_spring_test.xml” }) public abstract class AbstractMyTestCase extends AbstractJUnit4SpringContextTests 而“单位”测试如下: public class FooTest extends AbstractMyTestCase 使用自动assembly的属性。 在不同(集成测试)环境中运行测试的最佳方法是什么? 对测试进行子类化并覆盖ContextConfiguration? @ContextConfiguration(locations = { “/my_spring_integration_test.xml” }) public class FooIntegrationTest extends FooTest 这是否有效(我目前无法在此轻松测试)? 这种方法的问题是“@ContextConfiguration(locations = {”/ my_spring_integration_test.xml“})”重复了很多。 有什么建议么? 此致,弗洛里安

有没有办法在不使用外部JAVA_TOOL_OPTIONS的情况下使用UTF-8构建maven构建类文件?

我不想依赖外部环境变量来强制maven用UTF-8构建我的类。 在Mac上,我在使用maven构建时遇到了各种各样的问题。 只有下面的选项才能解决问题: export JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF-8 mvn clean install 但是我正在分发我的项目,依靠用户设置此环境变量来正确构建项目是没有意义的。 尝试了这里描述的所有内容: 为clojure源文件启用UTF-8编码 任何人都对这个令人敬畏的Maven问题有所了解?