Tag: maven

执行Mavenunit testing,并将classpath设置为生成的项目JAR

我的应用程序中的某些unit testing与查找和操作属于应用程序本身的某些文件资源有关。 我需要在应用程序的实际生产设置中执行这些测试,它将其部署为JAR文件,而不是作为展开的目录。 我怎么能指示Maven执行我的unit testing,考虑作为类路径项目生成jar文件(以及任何其他声明的库依赖项)而不是默认情况下在文件系统中编译的类? 换句话说,现在我的unit testing的类路径设置为: /$PROJECTPATH/target/classes/ 。 相反,我希望将此类路径设置为:/ /$PROJECTPATH/target/myjarfile.jar 。 我已尝试手动添加和删除依赖项类,如下所述: http : //maven.apache.org/plugins/maven-surefire-plugin/examples/configuring-classpath.html ,但直到现在它还无法运行。 我目前的项目POM看起来像这样: 4.0.0 org.mygroupid myartifact 0.0.1-SNAPSHOT … org.apache.maven.plugins maven-compiler-plugin 2.1 1.7 1.7 org.apache.maven.plugins maven-source-plugin 2.1.2 attach-sources jar org.apache.maven.plugins maven-dependency-plugin 2.4 runtime ${project.build.directory}/lib copy-dependencies process-resources <!– package –> copy-dependencies org.apache.maven.plugins maven-surefire-plugin 2.12.3 ${project.build.outputDirectory} ${project.build.directory}/${project.build.finalName}.${project.packaging} 在此先感谢您的任何帮助!

java.lang.NoClassDefFoundError:在eclipse maven中

在使用maven的eclipse中,我添加了一个依赖项作为本地jar文件,如下所示: xyz-core xyz-core 0 system /home/xyz/xyz-core.jar 在这个jar文件中,我有一个在我的应用程序中使用的接口。 当我在tomcat服务器上运行我的应用程序它显示该接口的exception Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener java.lang.NoClassDefFoundError: com/mxgraph/canvas/mxICanvas2D 而mxICanvas2D是一个接口。

更改Maven结构(src / java为src / Javasource)

我想将名称src / java更改为src / Javasource,因为有些CVS问题这可能吗?

Maven依赖项未添加到WEB-INF / lib

对于Spring,Maven,Tomcat和其他所有人来说都是新手,我正在尝试在Eclipse中建立一个Spring Web项目,使用Maven然后将项目部署到Tomcat。 我正在关注本教程,由SOF成员建议: http : //www.beingjavaguys.com/2013/08/spring-maven-web-application-in-eclipse.html 我很麻烦让Maven将pom.xml指定的依赖项添加到Tomcat的WEB-INF/lib 。 我一直严格遵循这些步骤,但在“在Eclipse中运行Spring Maven项目”部分中,我没有获得相同的部署程序集截图。 这就是我得到的: <img src="http://sofzh.miximages.com/java/lbY2P.png" alt="Eclipse中的Web部署程序集,运行 mvn eclipse:eclipse -Dwtpversion = 2.0 “> 我在Eclipse中检查过WTP在这里,它是(帮助 – >安装新软件 – >链接“安装了什么?”)但是我看到m2e-wtp的版本是1.0。**。 所以我试图运行mvn eclipse:eclipse -Dwtpversion=1.0命令(使用版本1.0而不是2.0)但仍然是同样的问题…… 有人遇到过同样的问题吗? 我已经看到了类似的问题,尝试了所建议但不幸的是没有任何对我有用的东西。 例如,我进入Web部署程序集并单击Add – > Java Build Path Entries但我没有看到Maven Dependencies复选框:我看到的是表单M2_REPO/…/…的条目列表 祝大家节日快乐,并提前感谢您对Myna的任何帮助

在maven的测试范围内从eclipse运行caliper

我在Eclipse中有一个Java项目,在我的src/test目录中有JUnit测试。 我还使用Caliper微基准测试为我的测试添加了一个类,我希望能够在Eclipse中运行这些测试。 由于Caliper代码是测试代码,我在test范围内添加了Caliper作为Maven的依赖项。 这使得它在我运行JUnit测试时显示在类路径中,但我看不到在类路径中运行具有测试依赖性的任意类的方法。 我尝试做的是为Java应用程序添加一个新的运行配置,以为我可以使用正确的类作为参数启动CaliperMain ,但Caliper jar不在类路径上,我看不到如何添加它。 我不想将我的基准代码和依赖项移动到main范围内,因为它是测试代码! 把它变成一个完全独立的项目似乎非常严重。

我应该在web应用程序(maven项目)中将java.util.logging的logging.properties文件放在哪里?

我想记录到文件并在属性文件中设置它,因为默认的logger.info()输出转到控制台,在我的情况下,在Web应用程序中没有控制台。

maven3 – maven-antrun-plugin – “无法创建任务或输入”

我正在尝试在maven构建中使用“if”ant任务。 我发现许多文章建议使用“ant-nodeps”依赖。 最终所有这些技巧都不适用于maven3 + ant 1.8.1 + maven-antrun-plugin 1.6。 “出现了一个Ant BuildException:问题:如果创建任务或输入失败” 有什么帮助吗? 这是真正的代码(相反,它没有必要,但以防万一): smtpConfigurationProfile true org.apache.maven.plugins maven-antrun-plugin 1.6 validate run org.apache.ant ant-nodeps 1.8.1

如何创建Maven构建配置文件以有条件地复制文件?

我是maven的新手,我正在尝试使用配置文件创建pom.xml来为不同的环境构建war文件 所以我创建了构建目标 myacct_okc src/main/java **/*.java src/main/resources config/${environment} 然后为每个环境创建配置文件 local false local jboss jboss dev dev 我为每个env创建一个配置文件夹 project root |– src | |– main | | |– java | | |– resources | | | |– config.xml | | | +– config.properties | | |– webapp | | | |– META-INF | | | | +–context.xml […]

单个还是多个Maven pom.xml配置文件?

我想问一下与Maven项目中的pom.xml文件有关的这些问题。 为所有依赖库创建多个pom.xml而不是在一个pom.xml包含所有依赖项的原因是什么? Maven项目中的这些pom.xml文件应该放在哪里? 这是Spring框架的pom.xml示例 – http://search.maven.org/remotecontent?filepath=org/springframework/spring-core/3.2.5.RELEASE/spring-core-3.2.5.RELEASE。 POM

使用Maven构建多个体系结构SWT应用程序

我为SWT应用程序设置了一个Maven项目。 此应用程序在多个平台(OS X,Windows 64位,Windows 32位,Linux 64位和Linux 32位)上运行,我已对其进行设置,以便在运行Maven并打包时检测到该平台应用程序转到不同的目标目录。 以下是来自pom.xml的相关部分,以实现此目的: linux_x86_64 linux amd64 ${project.basedir}/target/${project.version}/linux_x86_64 win32_x86_64 linux i386 ${project.basedir}/target/${project.version}/win32_x86_64 … 用于SWT的依赖是这样的: org.eclipse swt 3.7.2.v3740 … 为了清楚起见,我在本地存储库中安装了SWT虚拟包(org.eclipse.swt_3.7.2.v3740f.jar)和所有特定于平台的虚拟包(org.eclipse.swt.gtk.linux.x86_64_3.7.2) .v3740f,org.eclipse.swt.win32.x86_64_3.7.2.v3740f等)。 我打包依赖关系的方式是使用maven-dependency-plugin的“lib”文件夹,Maven足够聪明,可以复制SWT虚拟包和我正在打包应用程序的平台特定的一个。 到现在为止还挺好… 问题是我想从一台机器编译不同平台的应用程序。 我怎么做到这一点? 我已尝试在每个配置文件中使用每个平台所需的SWT jar设置属性,如下所示(Windows 64位示例): swt.win32.x86_64 3.7.2 但是采用这种方法,特定于配置文件的SWT jar 和我正在运行Maven的特定于平台的jar被复制到“lib”目录中,最后得到三个jar: SWT-3.7.2.v3740.jar swt.gtk.linux.x86_64-3.7.2.jar swt.win32.x86_64-3.7.2.jar 有没有一种方法可以指定一个配置文件忽略我正在运行它的机器,这样我就不需要手动删除它的SWT jar了? 提前致谢。