【问题标题】:Axis2 with Maven带有 Maven 的 Axis2
【发布时间】:2012-03-07 20:20:50
【问题描述】:

我开始使用 Axis2,以前从未使用过它。

Maven 是 Axis2 示例工作的依赖项。我正确地执行了这些步骤并创建了环境变量并重新启动了 Windows 7。

当尝试运行任何axis2示例时,我收到以下错误消息:

cd C:\Apache\axis\samples\java_first_jaxws; "JAVA_HOME=C:\\Program Files\\Java\\jdk1.7.0_02" C:\\Apache\\maven\\bin\\mvn.bat
The syntax of the command is incorrect.
The syntax of the command is incorrect.

ERROR: M2_HOME not found in your environment.
Please set the M2_HOME variable in your environment to match the
location of the Maven installation

我已经仔细检查了环境变量,它们是正确的。有一件事困扰着我。当我在命令上运行mvn --version 时,它返回给我The syntax of the command is incorrect.,并且此错误与不存在的 POM 文件有关。 Axis2 中的所有示例都有一个 pom.xml 文件。

由于是我第一次接触Java,我认为这是一个很容易解决的问题。

提前感谢您的帮助。

编辑

运行这个: cd /d C:\Apache\axis\samples\java_first_jaxws and then mvn install

结果: [ERROR] Unknown lifecycle phase "pom.xml". You must specify a valid lifecycle ph ase or a goal in the format <plugin-prefix>:<goal> or <plugin-group-id>:<plugin- artifact-id>[:<plugin-version>]:<goal>. Available lifecycle phases are: validate , initialize, generate-sources, process-sources, generate-resources, process-res ources, compile, process-classes, generate-test-sources, process-test-sources, g enerate-test-resources, process-test-resources, test-compile, process-test-class es, test, prepare-package, package, pre-integration-test, integration-test, post -integration-test, verify, install, deploy, pre-clean, clean, post-clean, pre-si te, site, post-site, site-deploy. -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit ch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please rea d the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/LifecyclePhase NotFoundException

【问题讨论】:

    标签: java maven axis2


    【解决方案1】:

    我在 Windows XP 中使用 Maven 3.0 看到此错误消息。对我来说,当我用引号将 M2_HOME 变量括起来时,我看到了错误。

    M2_HOME="C:\..."
    

    但是当我删除引号时错误消失了。

    M2_HOME=C:\...
    

    我不需要引号,因为路径中没有空格。当路径中存在空格时,可能需要引号,但我没有对此进行测试。

    仅供参考,我通过从mvn.bat 的开头删除@echo off 指令来调试问题。当M2_HOME 变量在另一对引号中被引用时,问题似乎出现了。

    【讨论】:

    • 这为我解决了这个问题。安装所需的配置垃圾数量令人难以置信。双击并安装发生了什么。
    【解决方案2】:
    • 您是在使用某种 Cygwin shell 还是从某个网页上复制的?如果您使用普通的旧命令提示符,则粘贴的命令无效。
    • 在环境变量中设置JAVA_HOME,而不是在命令行中。
    • 将 C:\Apache\maven\bin 添加到您的 PATH 环境变量中,这样您就不必总是通过指定路径来运行 mvn
    • 在你的环境变量中设置M2_HOME,我猜应该是C:\Apache\maven\bin。

    【讨论】:

    • 我有JAVA_HOME、M2_HOME和M2_HOME\bin,根据Maven和Axis2的安装指南,所有环境变量都OK。当您说“或者您是否从某个网页复制此内容”时复制了什么?
    • @Gerep:如果您运行命令提示符并运行set,是否会显示所有变量?另外,我在谈论您发布的命令 (cd &lt;something&gt;; "variable=something" mvn) - 这是 Windows shell 的非法表达式,因此整个“命令的语法不正确。”)
    • 关于那个 (cd &lt;something&gt;; "variable=something" mvn),它是由 NetBeans7 生成的……是的……set 命令返回项目运行所需的所有变量……
    • @Gerep:现在我明白了,NetBeans 似乎使事情复杂化了,因为它正在生成 Linux shell 脚本。您可以启动命令提示符并运行cd /d C:\Apache\axis\samples\java_first_jaxws,然后运行mvn install 吗?
    • @Gerep:关于更新,您是运行mvn install pom.xml 还是再次使用NetBeans?你应该只运行mvn install 并且 Maven 应该自己找到 POM。你也没有提到你从哪里下载了 Maven,以及它是什么版本。
    猜你喜欢
    • 2020-01-30
    • 2011-12-05
    • 1970-01-01
    • 1970-01-01
    • 2011-06-17
    • 2012-05-23
    • 1970-01-01
    • 2015-04-30
    • 1970-01-01
    相关资源
    最近更新 更多