Java 安装maven时没有指定目标异常

Java 安装maven时没有指定目标异常,java,macos,maven,java-home,Java,Macos,Maven,Java Home,看起来这是设置maven的一个重复挑战,但我在这方面也有自己的挑战。。。!我是maven和java的新手,非常感谢您的帮助 这是我目前在MacOS v10.15.7上的设置 正如maven所建议的,我首先定义我的JAVA_主页(在OSX中不是默认设置的) 然后我继续下载Maven 3.6.3,并在/Users/byc/Downloads/apache-Maven-3.6.3上创建了一个文件夹,运行以下命令 export PATH=/Users/byc/Downloads/apache-maven

看起来这是设置maven的一个重复挑战,但我在这方面也有自己的挑战。。。!我是maven和java的新手,非常感谢您的帮助

这是我目前在MacOS v10.15.7上的设置

正如maven所建议的,我首先定义我的JAVA_主页(在OSX中不是默认设置的)

然后我继续下载Maven 3.6.3,并在
/Users/byc/Downloads/apache-Maven-3.6.3
上创建了一个文件夹,运行以下命令

export PATH=/Users/byc/Downloads/apache-maven-3.6.3/bin:$PATH
mvn --verison
-bash: mvn: command not found
当我运行mvn-e时,我得到了以下信息。这是否意味着Maven没有正确绑定到
$PATH

mvn -e
[INFO] Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  0.059 s
[INFO] Finished at: 2020-12-01T19:03:43Z
[INFO] ------------------------------------------------------------------------
[ERROR] No goals have been specified for this build. You must specify a valid lifecycle phase 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-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy, pre-clean, clean, post-clean, pre-site, site, post-site, site-deploy. -> [Help 1]
org.apache.maven.lifecycle.NoGoalSpecifiedException: No goals have been specified for this build. You must specify a valid lifecycle phase 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-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy, pre-clean, clean, post-clean, pre-site, site, post-site, site-deploy.
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:97)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:193)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:567)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
[ERROR] 
[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 read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/NoGoalSpecifiedException
mvn-e
[信息]错误堆栈跟踪已打开。
[信息]正在扫描项目。。。
[信息]------------------------------------------------------------------------
[信息]生成失败
[信息]------------------------------------------------------------------------
[信息]总时间:0.059秒
[信息]完成时间:2020-12-01T19:03:43Z
[信息]------------------------------------------------------------------------
[错误]尚未为此生成指定任何目标。必须以以下格式指定有效的生命周期阶段或目标:或:[:]:。可用的生命周期阶段包括:验证、初始化、生成源、流程源、生成资源、流程资源、编译、流程类、生成测试源、流程测试源、生成测试资源、流程测试资源、测试编译、流程测试类、测试、准备包、包、预集成测试、,集成测试、集成后测试、验证、安装、部署、预清理、清理、清理后、预站点、站点、站点后、站点部署。->[帮助1]
org.apache.maven.lifecycle.nogoalsspecifiedException:尚未为此构建指定任何目标。必须以以下格式指定有效的生命周期阶段或目标:或:[:]:。可用的生命周期阶段包括:验证、初始化、生成源、流程源、生成资源、流程资源、编译、流程类、生成测试源、流程测试源、生成测试资源、流程测试资源、测试编译、流程测试类、测试、准备包、包、预集成测试、,集成测试、集成后测试、验证、安装、部署、预清理、清理、清理后、预站点、站点、站点后、站点部署。
位于org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:97)
在org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305)
在org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192)
位于org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105)
位于org.apache.maven.cli.MavenCli.execute(MavenCli.java:957)
位于org.apache.maven.cli.MavenCli.doMain(MavenCli.java:289)
位于org.apache.maven.cli.MavenCli.main(MavenCli.java:193)
位于jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(本机方法)
位于jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
位于java.lang.reflect.Method.invoke(Method.java:567)
位于org.codehaus.plexus.classworlds.launcher.launcher.launchEnhanced(launcher.java:282)
位于org.codehaus.plexus.classworlds.launcher.launcher.launch(launcher.java:225)
在org.codehaus.plexus.classworlds.launcher.launcher.main上使用exitcode(launcher.java:406)
位于org.codehaus.plexus.classworlds.launcher.launcher.main(launcher.java:347)
[错误]
[错误]使用-X开关重新运行Maven以启用完整调试日志记录。
[错误]
[错误]有关错误和可能的解决方案的更多信息,请阅读以下文章:
[错误][帮助1]http://cwiki.apache.org/confluence/display/MAVEN/NoGoalSpecifiedException
有几件事:

  • 我不知道为什么Maven文档继续告诉人们设置
    JAVA\u HOME
    。如果
    javac
    (是的,
    javac
    ,不知道为什么)在您的路径中(这通常意味着
    java
    也在您的路径中),那么这是不必要的
  • 您将
    version
    拼错为
    verison
    ,这就是您收到
    -bash:mvn:command not found
    的原因
  • 你指定了,所以Maven不知道该怎么办

  • 不,这意味着您没有告诉Maven做任何事情,比如
    mvn compile
    。Maven有一组特定的目标,您可以在每次执行时指定一个或多个目标。可用的目标可能会受到与生命周期中特定步骤相关联的“插件”的影响。最简单的目标是“干净”
    mvn clean
    从您的工作区中删除特定类型的工件,这些工件可以在构建过程中稍后下载或生成。(最后请注意,
    /usr/libexec/java_home
    是在macOS上查找特定JDK安装根目录的最佳方法。)唉,拼写错误!它现在已启动并运行
    mvn-version。Apache Maven 3.6.3 Maven home:/Users/byc/Downloads/Apache-Maven-3.6.3 Java版本:12.0.2,供应商:Oracle公司,运行时:/Library/Java/JavaVirtualMachines/openjdk-12.0.2.jdk/Contents/home默认区域设置:en_GB,平台编码:UTF-8操作系统名称:“mac OS x”,版本:“10.15.7”,arch:“x86_64”,系列:“mac”
    javac你的观点有什么用?由于过去的安装,我确实有几个JDK正在运行
    /usr/libexec/java_home
    已经给我指出了当前的一个:)@byc我猜在没有任何信息的情况下,
    javac
    而不是
    java
    的测试是看Maven是否可以访问JDK而不是JRE。我进一步推测,这是出于历史原因,不再相关:也许
    maven编译器插件
    比现在更紧密地集成到maven内核中,也许在遥远的过去,它需要向
    javac
    抛售。或者,你知道,输入错误。看起来不太可能,但我需要运行
    export PATH=/Users/byc/Dow吗
    
    mvn -e
    [INFO] Error stacktraces are turned on.
    [INFO] Scanning for projects...
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD FAILURE
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  0.059 s
    [INFO] Finished at: 2020-12-01T19:03:43Z
    [INFO] ------------------------------------------------------------------------
    [ERROR] No goals have been specified for this build. You must specify a valid lifecycle phase 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-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy, pre-clean, clean, post-clean, pre-site, site, post-site, site-deploy. -> [Help 1]
    org.apache.maven.lifecycle.NoGoalSpecifiedException: No goals have been specified for this build. You must specify a valid lifecycle phase 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-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy, pre-clean, clean, post-clean, pre-site, site, post-site, site-deploy.
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:97)
        at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
        at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
        at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
        at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957)
        at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289)
        at org.apache.maven.cli.MavenCli.main (MavenCli.java:193)
        at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
        at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
        at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke (Method.java:567)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
    [ERROR] 
    [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 read the following articles:
    [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/NoGoalSpecifiedException