我已经在eclipse helios中创build了一个具有单个子模块的最小Maven项目。 在src / test / resources文件夹中,我放置了一个文件“install.xml”。 在文件夹src / test / java中,我创build了一个包含一个类的包: @Test public void doit() throws Exception { URL url = this.getClass().getClassLoader().getResource("install.xml"); System.out.println(url.getPath()); } 但是当我作为一个junit运行代码4unit testing我只是得到一个NullPointerException。 这已经工作了一百万次。 有任何想法吗? 我遵循这个指南: http://www.fuyun.org/2009/11/how-to-read-input-files-in-maven-junit/ 但仍然得到相同的错误。
我有一个模块的Maven项目 /myProject pom.xml /myModule pom.xml /foo bar.txt 考虑在myModule中需要打开bar.txt的Junit,maven的basedir是模块目录。 所以打开文件bar.txt : new File("foo/bar.txt") 当你在intellij中启动相同的junit的时候 ,当你执行mvn test时候这个效果很好,但是因为Intellij在工程目录中设置了basedir而不是在module目录中,所以失败了。 Intellij尝试打开myProject/foo/bar.txt而不是myProject/myModule/foo/bar.txt 有办法处理吗?
在具有多个依赖项和存储库的项目中,Maven下载依赖关系的尝试错误方法有点繁琐且很慢,所以我想知道是否有任何方法为某些声明的依赖关系设置特定的回购。 例如,我想让bouncycastle在http://repo2.maven.org/maven2/org/bouncycastle/上直接检查BouncyCastle的Maven回购,而不是正式的Maven。
目前,我正在testingGradle作为Maven的替代scheme。 在我的项目中,有一些第三方的jar子,在任何(Maven)仓库中都没有。 我的问题是现在,我怎么能pipe理它安装到我的本地.gradle存储库这些jar子。 (如果可能的话,我不想使用本地的Maven仓库,因为Gradle应该独立运行。)目前,由于缺lessjar子,我得到了很多exception。 在Maven中,通过运行install命令非常简单。 但是,我的谷歌search类似于Maven的安装命令是不成功的。 有没有人有一个想法?
是否有一个简单的Servlet(2.5)Web应用程序的Maven 2原型?
如何从Maven-jetty-plugin运行Jetty设置VM参数? 例如,我需要将-Xmxparameter passing给由mvn jetty:run命令运行的Jetty。
我想用maven release插件发布一个快照项目“foo-1.0-SNAPSHOT”。 该项目取决于尚未发布的第三方模块“bar-1.0-SNAPSHOT”。 我在我的项目的pom.xml中使用选项'allowTimestampedSnapshots',以允许时间戳快照,但我认为第三方模块(酒吧)是没有时间戳,除非我自己构build,因为maven仍抱怨未解决的SNAPSHOT依赖项。 有没有一种方法来释放项目foo,而不pipe依赖SNAPSHOT项目,如果不是,我怎么能添加一个时间戳到第三方项目?
我希望Maven在运行时依赖包的同时打包一个项目。 我期望它创build一个JAR文件,具有以下清单: ….. Main-Class : com.acme.MainClass Class-Path : lib/dependency1.jar lib/dependency2.jar ….. 并创build以下目录结构: target |– …. |– my-project.jar |– lib |– dependency1.jar |– dependency2.jar 意思是,我想要主JAR排除任何依赖关系,我希望所有的传递依赖被复制到一个“lib”子目录。 有任何想法吗?
我刚刚开始使用Maven (真正的评估它),我需要能够为我的应用程序和一个具有所有依赖关系的目录(例如lib)快速生成一个JAR文件,以便我可以部署这两个以独立的方式运行。 使用适当的清单生成JAR文件很容易,但我不知道如何让Maven将当前项目的依赖项复制到我可以部署的lib目录中。 由于这是一个独立的Java应用程序,所以我对将其部署到Maven存储库不感兴趣,这也相当微不足道,或者至less很容易googleable。 我已经find了如何做一切事情, 除了复制依赖的JAR文件到一些指定的目录。 这是我正在寻找的工作stream程: $ mvn clean $ mvn package $ cp -r target/{lib,myApp.jar} installLocation 然后,作为JAR文件从installLocation运行myApp.jar应该“只是工作”,不pipe我的$CLASSPATH 。 尝试抢先一些答案: 我有一个主要的类:设置,它工作正常。 我也在MANIFEST.MF中设置了类path,而且工作正常。 我已经发现如何使用<classpathPrefix>和<classpathMavenRepositoryLayout>来使这个工作,但只在我的机器上。 (通过: <classpathPrefix>${settings.localRepository}</classpathPrefix> )
我们有一个多模块的maven项目,它使用一个configuration文件来定义一个buildnumber-maven-plugin来增加一个内部版本号,然后将其检查到源代码控制中。 如果我在父pom.xml中定义插件,它也会执行所有子构build。 这是我的父pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.webwars</groupId> <artifactId>parent</artifactId> <packaging>pom</packaging> <properties> <buildNumber.properties>${basedir}/../parent/buildNumber.properties</buildNumber.properties> </properties> <version>1.0-SNAPSHOT</version> <name>Parent Project</name> <profiles> <profile> <id>release</id> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <debug>false</debug> <optimize>true</optimize> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>buildnumber-maven-plugin</artifactId> <version>1.0-beta-3</version> <executions> <execution> <phase>validate</phase> <goals> <goal>create</goal> </goals> </execution> </executions> <configuration> <buildNumberPropertiesFileLocation>${buildNumber.properties}</buildNumberPropertiesFileLocation> <getRevisionOnlyOnce>true</getRevisionOnlyOnce> <doCheck>false</doCheck> <doUpdate>false</doUpdate> <format>{0, number}</format> <items> <item>buildNumber</item> </items> </configuration> </plugin> […]