jjzjj

java - 尝试在 Windows 上运行 Maven 时出错

coder 2024-06-21 原文

我正在尝试在 Windows 7 上设置 Maven。我尝试了版本 3.3.3 和 3.3.1,结果相同。我尝试使用 JAVA_HOME 和路径变量更改 jdk,但我得到了相同的结果。
我是 Maven 的新手,所以请原谅我的无知。

我从 mvn.cmd 脚本中注释掉了 echo off 以尝试调试。

启动 maven 的 java 调用只显示 java 帮助消息,就好像命令不知何故无效一样。我做错了什么?

H:\>"C:\bin\jdk1.7.0_60\bin\java.exe"    -classpath "c:\bin\apache-maven-3.3.1\bin\..\boot\plexus-classworlds-2.5.2.jar" "-Dclassworlds.conf=c:\bin\apache-maven-3.3.1\bin\..\bin\m2.conf" "-Dmaven.home=c:\bin\apache-maven-3.3.1\bin\.." "-Dmaven.multiModuleProjectDirectory=H:\" org.codehaus.plexus.classworlds.launcher.Launcher

H:\>mvn

H:\>if "H:\" == "" (set "HOME=H:\" )

H:\>if not "" == "" goto skipRcPre

H:\>if exist "H:\\mavenrc_pre.bat" call "H:\\mavenrc_pre.bat"

H:\>if exist "H:\\mavenrc_pre.cmd" call "H:\\mavenrc_pre.cmd"

H:\>set ERROR_CODE=0

H:\>if not "C:\bin\jdk1.7.0_60" == "" goto OkJHome

H:\>if exist "C:\bin\jdk1.7.0_60\bin\java.exe" goto chkMHome

H:\>if not "" == "" goto valMHome

H:\>SET "M2_HOME=c:\bin\apache-maven-3.3.1\bin\.."

H:\>if not "c:\bin\apache-maven-3.3.1\bin\.." == "" goto valMHome

H:\>if not "_." == "_\" goto checkMCmd

H:\>if exist "c:\bin\apache-maven-3.3.1\bin\..\bin\mvn.cmd" goto init

H:\>set MAVEN_CMD_LINE_ARGS=

H:\>set MAVEN_PROJECTBASEDIR=

H:\>IF NOT "" == "" goto endDetectBaseDir

H:\>set EXEC_DIR=H:\

H:\>set WDIR=H:\

H:\>IF EXIST "H:\"\.mvn goto baseDirFound

H:\>cd ..

H:\>IF "H:\" == "H:\" goto baseDirNotFound

H:\>set MAVEN_PROJECTBASEDIR=H:\

H:\>cd "H:\"

H:\>IF NOT EXIST "H:\\.mvn\jvm.config" goto endReadAdditionalConfig

H:\>SET MAVEN_JAVA_EXE="C:\bin\jdk1.7.0_60\bin\java.exe"

H:\>for %i in ("c:\bin\apache-maven-3.3.1\bin\.."\boot\plexus-classworlds-*) do set CLASSWORLDS_JAR="%i"

H:\>set CLASSWORLDS_JAR="c:\bin\apache-maven-3.3.1\bin\..\boot\plexus-classworlds-2.5.2.jar"

H:\>set CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher

H:\>"C:\bin\jdk1.7.0_60\bin\java.exe"    -classpath "c:\bin\apache-maven-3.3.1\bin\..\boot\plexus-classworlds-2.5.2.jar" "-Dclassworlds.conf=c:\bin\apache-maven-3.3.1\bin\..\bin\m2.conf" "-Dmaven.home=c:\bin\apache-maven-3.3.1\bin\.." "-Dmaven.multiModuleProjectDirectory=H:\" org.codehaus.plexus.classworlds.launcher.Launcher
Usage: java [-options] class [args...]
           (to execute a class)
   or  java [-options] -jar jarfile [args...]
           (to execute a jar file)
where options include:
    -d32          use a 32-bit data model if available
    -d64          use a 64-bit data model if available
    -server       to select the "server" VM
    -hotspot      is a synonym for the "server" VM  [deprecated]
                  The default VM is server.

    -cp <class search path of directories and zip/jar files>
    -classpath <class search path of directories and zip/jar files>
                  A ; separated list of directories, JAR archives,
                  and ZIP archives to search for class files.
    -D<name>=<value>
                  set a system property
    -verbose:[class|gc|jni]
                  enable verbose output
    -version      print product version and exit
    -version:<value>
                  require the specified version to run
    -showversion  print product version and continue
    -jre-restrict-search | -no-jre-restrict-search
                  include/exclude user private JREs in the version search
    -? -help      print this help message
    -X            print help on non-standard options
    -ea[:<packagename>...|:<classname>]
    -enableassertions[:<packagename>...|:<classname>]
                  enable assertions with specified granularity
    -da[:<packagename>...|:<classname>]
    -disableassertions[:<packagename>...|:<classname>]
                  disable assertions with specified granularity
    -esa | -enablesystemassertions
                  enable system assertions
    -dsa | -disablesystemassertions
                  disable system assertions
    -agentlib:<libname>[=<options>]
                  load native agent library <libname>, e.g. -agentlib:hprof
                  see also, -agentlib:jdwp=help and -agentlib:hprof=help
    -agentpath:<pathname>[=<options>]
                  load native agent library by full pathname
    -javaagent:<jarpath>[=<options>]
                  load Java programming language agent, see java.lang.instrument
    -splash:<imagepath>
                  show splash screen with specified image
See http://www.oracle.com/technetwork/java/javase/documentation/index.html for more details.

H:\>if ERRORLEVEL 1 goto error

H:\>set ERROR_CODE=1

H:\>if not "" == "" goto skipRcPost

H:\>if exist "H:\\mavenrc_post.bat" call "H:\\mavenrc_post.bat"

H:\>if exist "H:\\mavenrc_post.cmd" call "H:\\mavenrc_post.cmd"

H:\>if "" == "on" pause

H:\>if "" == "on" exit 1

H:\>exit /B 1

H:\>

最佳答案

"-Dmaven.multiModuleProjectDirectory=H:\" 我是问题所在。显然,java.exe 试图取消转义字符串 \"

java "-Dabc=xyz\"my.Dummy

对我产生同样的错误,而

java "-Dabc=xyz\\"my.Dummy 似乎有效。

如果您使用另一个项目目录路径,看看情况是否有所改变,或者尝试 "-Dmaven.multiModuleProjectDirectory=H:\\"

%HOME% 是 mvn 看的环境变量,所以你可能想将它设置为另一个值,或者 "" 让 maven 使用默认路径%HOMEDRIVE%%HOMEPATH%

关于java - 尝试在 Windows 上运行 Maven 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31591008/

有关java - 尝试在 Windows 上运行 Maven 时出错的更多相关文章

  1. ruby - 如何从 ruby​​ 中的字符串运行任意对象方法? - 2

    总的来说,我对ruby​​还比较陌生,我正在为我正在创建的对象编写一些rspec测试用例。许多测试用例都非常基础,我只是想确保正确填充和返回值。我想知道是否有办法使用循环结构来执行此操作。不必为我要测试的每个方法都设置一个assertEquals。例如:describeitem,"TestingtheItem"doit"willhaveanullvaluetostart"doitem=Item.new#HereIcoulddotheitem.name.shouldbe_nil#thenIcoulddoitem.category.shouldbe_nilendend但我想要一些方法来使用

  2. ruby - 在 Ruby 程序执行时阻止 Windows 7 PC 进入休眠状态 - 2

    我需要在客户计算机上运行Ruby应用程序。通常需要几天才能完成(复制大备份文件)。问题是如果启用sleep,它会中断应用程序。否则,计算机将持续运行数周,直到我下次访问为止。有什么方法可以防止执行期间休眠并让Windows在执行后休眠吗?欢迎任何疯狂的想法;-) 最佳答案 Here建议使用SetThreadExecutionStateWinAPI函数,使应用程序能够通知系统它正在使用中,从而防止系统在应用程序运行时进入休眠状态或关闭显示。像这样的东西:require'Win32API'ES_AWAYMODE_REQUIRED=0x0

  3. ruby - ECONNRESET (Whois::ConnectionError) - 尝试在 Ruby 中查询 Whois 时出错 - 2

    我正在用Ruby编写一个简单的程序来检查域列表是否被占用。基本上它循环遍历列表,并使用以下函数进行检查。require'rubygems'require'whois'defcheck_domain(domain)c=Whois::Client.newc.query("google.com").available?end程序不断出错(即使我在google.com中进行硬编码),并打印以下消息。鉴于该程序非常简单,我已经没有什么想法了-有什么建议吗?/Library/Ruby/Gems/1.8/gems/whois-2.0.2/lib/whois/server/adapters/base.

  4. ruby - 在 64 位 Snow Leopard 上使用 rvm、postgres 9.0、ruby 1.9.2-p136 安装 pg gem 时出现问题 - 2

    我想为Heroku构建一个Rails3应用程序。他们使用Postgres作为他们的数据库,所以我通过MacPorts安装了postgres9.0。现在我需要一个postgresgem并且共识是出于性能原因你想要pggem。但是我对我得到的错误感到非常困惑当我尝试在rvm下通过geminstall安装pg时。我已经非常明确地指定了所有postgres目录的位置可以找到但仍然无法完成安装:$envARCHFLAGS='-archx86_64'geminstallpg--\--with-pg-config=/opt/local/var/db/postgresql90/defaultdb/po

  5. ruby - 如何每月在 Heroku 运行一次 Scheduler 插件? - 2

    在选择我想要运行操作的频率时,唯一的选项是“每天”、“每小时”和“每10分钟”。谢谢!我想为我的Rails3.1应用程序运行调度程序。 最佳答案 这不是一个优雅的解决方案,但您可以安排它每天运行,并在实际开始工作之前检查日期是否为当月的第一天。 关于ruby-如何每月在Heroku运行一次Scheduler插件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8692687/

  6. ruby-on-rails - 如何在 ruby​​ 中使用两个参数异步运行 exe? - 2

    exe应该在我打开页面时运行。异步进程需要运行。有什么方法可以在ruby​​中使用两个参数异步运行exe吗?我已经尝试过ruby​​命令-system()、exec()但它正在等待过程完成。我需要用参数启动exe,无需等待进程完成是否有任何ruby​​gems会支持我的问题? 最佳答案 您可以使用Process.spawn和Process.wait2:pid=Process.spawn'your.exe','--option'#Later...pid,status=Process.wait2pid您的程序将作为解释器的子进程执行。除

  7. ruby - 无法运行 Rails 2.x 应用程序 - 2

    我尝试运行2.x应用程序。我使用rvm并为此应用程序设置其他版本的ruby​​:$rvmuseree-1.8.7-head我尝试运行服务器,然后出现很多错误:$script/serverNOTE:Gem.source_indexisdeprecated,useSpecification.Itwillberemovedonorafter2011-11-01.Gem.source_indexcalledfrom/Users/serg/rails_projects_terminal/work_proj/spohelp/config/../vendor/rails/railties/lib/r

  8. ruby - Sinatra:运行 rspec 测试时记录噪音 - 2

    Sinatra新手;我正在运行一些rspec测试,但在日志中收到了一堆不需要的噪音。如何消除日志中过多的噪音?我仔细检查了环境是否设置为:test,这意味着记录器级别应设置为WARN而不是DEBUG。spec_helper:require"./app"require"sinatra"require"rspec"require"rack/test"require"database_cleaner"require"factory_girl"set:environment,:testFactoryGirl.definition_file_paths=%w{./factories./test/

  9. java - 等价于 Java 中的 Ruby Hash - 2

    我真的很习惯使用Ruby编写以下代码:my_hash={}my_hash['test']=1Java中对应的数据结构是什么? 最佳答案 HashMapmap=newHashMap();map.put("test",1);我假设? 关于java-等价于Java中的RubyHash,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/22737685/

  10. 使用 ACL 调用 upload_file 时出现 Ruby S3 "Access Denied"错误 - 2

    我正在尝试编写一个将文件上传到AWS并公开该文件的Ruby脚本。我做了以下事情:s3=Aws::S3::Resource.new(credentials:Aws::Credentials.new(KEY,SECRET),region:'us-west-2')obj=s3.bucket('stg-db').object('key')obj.upload_file(filename)这似乎工作正常,除了该文件不是公开可用的,而且我无法获得它的公共(public)URL。但是当我登录到S3时,我可以正常查看我的文件。为了使其公开可用,我将最后一行更改为obj.upload_file(file

随机推荐