目前我用jboss:hard-deploy部署我的war jboss:hard-deploy到我的JBoss 6 AS。 这很好,但我必须从SVN签出项目并打包它。 war已经由Jenkins上传到我们的内部快照存储库,如果我可以从测试服务器上下载它并使用maven将其直接部署到JBoss,那将是很好的。 这个问题与从存储库到远程服务器的Maven部署工件之争有关,但我不认为答案是正确的(参见那里的评论)。
我已经和Maven一起工作了几天,但仍然对一些术语感到困惑: 第一个问题是repository和pluginRepository之间的区别是什么? 如果存在function差异,那么我应该为两者添加一个url吗? 第二个问题是dependency和plugin之间的区别是什么? 也许它们是完全不同的项目比较,因为plugin可以包含dependencies ,但对我来说plugins看起来像构建中的某种依赖项? 就像“这个build取决于这些插件,其中一个插件依赖于依赖”,我总是认为依赖是一种库jar,而插件是库jar或依赖jar中的项目… 对不起,如果问题有点愚蠢,但我真的很困惑。 请提示,谢谢。
我刚刚下载了Maven的最新版本。 而当我想跑 mvn archetype:generate 我收到错误消息 [警告]读取原型目录时出错http://repo1.maven.org/maven2 org.apache.maven.wagon.authorization.AuthorizationException:访问被拒绝: http: //repo1.maven.org/maven2,De reasonPhrase:拒绝访问。 org.apache.maven.wagon.shared.http4.AbstractHttpClientWagon.fillInputData(AbstractHttpClientWagon.java:928)org.apache.maven.wagon.StreamWagon.getInputStream(StreamWagon.java:116)at org.apache.maven.wagon位于org.apache.maven.archetype.source的org.apache.maven.wagon.StreamWagon.get(StreamWagon.java:61)的.StreamWagon.getIfNewer(StreamWagon.java:88).RemoteCatalogArchetypeDataSource.downloadCatalog(RemoteCatalogArchetypeDataSource.java:119 )org.apache.mache.mache.z上的org.apache.maven.archetype.source.RemoteCatalogArchetypeDataSource.getArchetypeCatalog(RemoteCatalogArchetypeDataSource.java:87)org.apache.maven.archetype.DefaultArchetypeManager.getRemoteCatalog(DefaultArchetypeManager.java:216)。位于org.apache.maven.archetype.ui.generation.DefaultArchetypeSelector.selectArchetyp的org.apache.maven.archetype.ui.generation.DefaultArchetypeSelector.getArchetypesByCatalog(DefaultArchetypeSelector.java:200)的DefaultArchetypeManager.getRemoteCatalog(DefaultArchetypeManager.java:205) e(DefaultArchetypeSelector.java:71)org.apache.maven.archetype.mojos.CreateProjectFromArchetypeMojo.execute(CreateProjectFromArchetypeMojo.java:197)org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)at org位于org.apache.maven.lifecycle.internal的org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)的.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) .jojoExecutor.execute(MojoExecutor.java:145)org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java) :59)在org.apache的org.apache.maven.life.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)。 org.apache.maven.Defa上的maven.DefaultMaven.doExecute(DefaultMaven.java:320) org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)的ultMaven.execute(DefaultMaven.java:156)org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)org .apache.maven.cli.MavenCli.main(MavenCli.java:141)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(来自org.codehaus.plexus.classworlds.launcher.Launcher的org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)的java.lang.reflect.Method.invoke(未知来源)的未知来源.launch(Launcher.java:230)org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) )[警告]在远程目录中找不到原型。 默认为内部目录[INFO]未定义原型。 使用maven-archetype-quickstart(org.apache.maven.archetypes:maven-archetype-quickstart:1.0) 我没有代理和互联网工作正常。 防火墙已关闭。 如何解决这个问题呢 ? 谢谢你的帮助。 如果我们查看类org.apache.maven.wagon.shared.http4.AbstractHttpClientWagon方法fillInputData(InputData inputData),我们可以看到: public void fillInputData( InputData inputData ) throws TransferFailedException, ResourceDoesNotExistException,AuthorizationException { …. HttpResponse response; …. statusCode = response.getStatusLine().getStatusCode(); …. switch ( […]
我在用着 Jetty 9嵌入式。 Maven的 Java 1.7 JSTL 当我在Eclipse中运行我的应用程序并浏览到包含JSTL标记的网页时,它可以正常工作。 当我将它捆绑在一个可执行的jar中并从cmd提示符运行时,我得到了 org.apache.jasper.JasperException:/jsp/pcReport.jsp(4,62)PWC6188:绝对uri: http : //java.sun.com/jsp/jstl/core无法在web.xml或者使用此应用程序部署的jar文件 我的依赖 javax.servlet jstl 1.2 org.eclipse.jetty jetty-webapp 9.0.6.v20130930 org.mortbay.jetty jsp-2.1-glassfish 2.1.v20100127 我的插件 org.apache.maven.plugins maven-jar-plugin 2.4 com.pricemon.server.Main webapp/WEB-INF/lib/ true etc/ org.apache.maven.plugins maven-assembly-plugin 2.4 assembly.xml make-assembly package single web.xml中 spring org.springframework.web.servlet.DispatcherServlet 1 spring / 我在我的Manifest类路径下的WEB-INF / lib下有我的JSTL jar 我只是无法弄清楚为什么这在eclipse下运行时有效但从可执行jar运行时不会工作。 我也尝试在启动时手动添加到classpath而不起作用 java -classpath ./jstl-1.2.jar -jar app.jar […]
我正在尝试让AspectJ编织在一个简单的Maven项目中工作,并且不确定它出错的地方:当我使用“mvn exec:java”运行代码时,我看不到预期的输出。 我确信代码正常工作,因为我在STS中尝试了相同的工作,它工作正常。 我只是想让AspectJ在Maven项目中工作。 任何有关如何调试此类问题的提示将不胜感激。 4.0.0 com.aop aop1 0.0.1-SNAPSHOT jar aop1 http://maven.apache.org UTF-8 junit junit 3.8.1 test org.aspectj aspectjrt 1.7.3 org.codehaus.mojo aspectj-maven-plugin compile 1.7 1.7 true org.codehaus.mojo exec-maven-plugin 1.1 com.aop.aop1.App Aspect文件与代码位于同一文件夹中: package com.aop.aop1; public aspect aspect { pointcut secureAccess() : execution(* *.foo(..)); before() : secureAccess() { System.out.println(“BEHOLD the power of AOP !!!”); } } Java文件: […]
我正在尝试使用sonatype链接通过Install New Software菜单nad为Eclipse(Galileo)安装Maven集成 http://m2eclipse.sonatype.org/sites/m2e 并得到以下错误: 无法完成安装,因为找不到一个或多个必需的项目。 正在安装的软件:Eclipse的Maven Integration(必需)0.12.0.20101115-1102(org.maven.ide.eclipse.feature.feature.group 0.12.0.20101115-1102) 缺少要求:Eclipse的Maven Integration(必需)0.12.0.20101115-1102 (org.maven.ide.eclipse.feature.feature.group 0.12.0.20101115-1102)需要’org.eclipse.emf.ecore.edit 0.0.0’,但无法找到 试图搜索丢失的捆绑。 但没有成功。 🙁 有帮助吗?
我有一个多模块Maven项目( https://github.com/veniltonjr/msplearning ) 我需要的一个模块我需要以编程方式运行来自Maven构建“clean install ” 的命令 ,但是当我调用这些目标的执行时会发生以下错误: java.lang.IllegalStateException: 未指定Maven应用程序目录,系统属性中未提供$ {maven.home}。 请至少详细说明。 在Maven Invoker文档中说M2_HOME环境变量必须存在。 已经在我的SO中设置了这个变量。 这不足以使方法invoke工作? 按照我运行相关方法的代码段: Invoker invoker = new DefaultInvoker(); invoker.setLocalRepositoryDirectory(new File(“C:\\git\\msplearning”)); InvocationRequest request = new DefaultInvocationRequest(); request.setGoals(Arrays.asList(“clean”, “install”)); InvocationResult result = invoker.execute(request); // Exception occours here… 已经,谢谢! 编辑(解决方案) 我必须设置POM并设置Maven Home,在我的例子中是在M3_HOME环境变量中: InvocationRequest request = new DefaultInvocationRequest(); request.setPomFile(new File(“C:\\git\\msplearning\\pom.xml”)); request.setGoals(Collections.singletonList(“verify”)); Invoker invoker = new […]
我有一个在Maven中管理的项目,它有一些本机依赖项 ( LWJGL )。 一切都在开发中工作正常,但现在我想设置Maven,以便它将构建一个可以重新分发的可运行的.jar文件。 特别是,我希望用户可以非常轻松地运行应用程序,而无需使用库路径或解压缩本机库等。 目前我能够构建一个包含所有依赖项的.jar文件,但如果我运行它(不出所料)我得到一个不满意的链接错误: Exception in thread “main” java.lang.UnsatisfiedLinkError: no lwjgl in java.libr ary.path at java.lang.ClassLoader.loadLibrary(Unknown Source) at java.lang.Runtime.loadLibrary0(Unknown Source) at java.lang.System.loadLibrary(Unknown Source) at org.lwjgl.Sys$1.run(Sys.java:73) at java.security.AccessController.doPrivileged(Native Method) at org.lwjgl.Sys.doLoadLibrary(Sys.java:66) at org.lwjgl.Sys.loadLibrary(Sys.java:95) at org.lwjgl.Sys.(Sys.java:112) at org.lwjgl.opengl.Display.(Display.java:132) at glaze.TestApp.start(TestApp.java:10) at glaze.TestApp.main(TestApp.java:31) 显然,我可以通过手动安装本机库并使用java -Djava.library.path=/path/to/libs运行jar来使其工作,但这不是我期望用户做的事情。 这是pom.xml,如果它是相关的: https : //github.com/mikera/glaze/blob/master/pom.xml 可以设置Maven,以便它创建一个包含本机依赖项的可运行.jar,并在双击时成功运行?
我正在尝试在Eclipse中调试Maven测试。 当我使用maven选项maven.surefire.debug启动测试时,我收到此错误: ERROR: transport error 202: bind failed: Address already in use FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197) ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510) JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [../../../src/share/back/debugInit.c:690] /bin/sh: line 1: 27500 Abort trap 当我尝试在我的shell中启动调试时,它是一样的。 我试图添加maven选项forkMode = never,如果没有maven.surefire.debug选项,我的焊接工件会出现另一个错误: Error loading Weld bootstrap, check that Weld […]
问题在于:我们为客户构建webapps。 我们还有一个“管理员”webapp,可以修改一些客户端数据结构。 由于数据的性质,两个webapp都必须在同一个JVM中运行。 这在生产中没有问题; 您只需将两个webapp放在同一个应用服务器中。 我们最近改用Mavenish的方式来布局webapps,Maven想要每个项目使用一个webapp。 在Eclipse中,这是一个问题,因为如果您独立运行不同的Web应用程序,它们将位于不同的JVM中。 我们正在尝试使用jetty-maven-plugin进行webapp测试,但如果可以解决这个问题,可以切换到别的东西。