Nano Hash - криптовалюты, майнинг, программирование

Ошибка Maven 3.0.4 в Windows 8 x64: использование: класс java [-options] [args]

Это мой первый пост на этом форуме. У меня проблема с Maven 3. ОС: Windows 8 Professional RTM.

Если я запускаю любую команду maven (независимо от того), я всегда получаю следующий ответ:

Использование: java [-options] class [args...] (для выполнения класса) или java [-options] -jar jarfile [args...] (для выполнения jar-файла)

где параметры включают: -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 | -jre-no-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
-da[:<packagename>...|:<classname>]
-disableassertions[:<packagename>...|:<classname>]
              disable assertions
-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

Я использовал Google и поиск по форуму, но единственные результаты были другой проблемой: это была проблема с переменными среды (большинство из них заканчивали путь дополнительной косой чертой).

Если я выполняю java -версию, я получаю:

версия java "1.6.0_35" Java(TM) SE Runtime Environment (сборка 1.6.0_35-b10) Java HotSpot(TM) 64-битный сервер VM (сборка 20.10-b01, смешанный режим)

Если я выполняю javac -version, я получаю:

javac 1.6.0_35

Я использую версию Maven 3.0.4. Это переменные среды, которые я добавил (я добавил M2_HOME и MAVEN_HOME, потому что не уверен, какая из них правильная):

CATALINA_OPTS=%MAVEN_OPTS%
CLASSPATH=%JAVA_HOME%\src.zip;%JAVA_HOME%\lib\tools.jar;
JAVA_HOME=C:\Program Files\Java\jdk1.6.0_35
M2_HOME=d:\software\apache-maven-3.0.4
MAVEN_HOME=d:\software\apache-maven-3.0.4
MAVEN_OPTS=-Xms512m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512m
PATH=%JAVA_HOME%\bin;%MAVEN_HOME%\bin;d:\software\eclipse;%M2_HOME%\bin

Переменная окружения path имеет больше путей, но я просто вставил сюда пути, которые добавил для моего прошлогоднего проекта.

Заранее спасибо за вашу помощь.


  • Итак, если вы выполните mvn -version, вы получите тот же результат, что и при выполнении java? 26.10.2012
  • Да, верно: вариант не имеет значения, я получу те же строки, что и запуск java-команды. Любая команда mvn возвращает все эти строки. Но если я выполняю java -version, я получаю версию java, как я описал в своем посте. Есть идеи? 26.10.2012
  • Можно ли запустить where mvn.bat из командной строки? У меня такое ощущение, что ваша установка maven каким-то образом повреждена. 26.10.2012
  • Я выполнил эту команду и получил правильный путь: d:\software\apache-maven-3.0.4\bin\mvn.bat И я снова загрузил Maven и снова распаковал его с тем же результатом. 26.10.2012
  • Хорошо, еще кое-что нужно проверить. Перейдите в папку apache-maven-3.0.4\bin и запустите mvn.bat -version оттуда. 26.10.2012
  • Это странно, потому что он возвращает версию Maven: кажется, моя система не видит команду mvn, несмотря на то, что переменные среды в порядке. Вот ответ на команду, которую вы мне сказали: Apache Maven 3.0.4 (r1232337; 2012-01-17 09:44:56+0100) Дом Maven: d:\software\apache-maven-3.0.4 Версия Java : 1.6.0_35, поставщик: Sun Microsystems Inc. Домашняя страница Java: C:\Program Files\Java\jdk1.6.0_35\jre Язык по умолчанию: es_ES, кодировка платформы: Cp1252 Имя ОС: windows nt (неизвестно), версия: 6.2, арка: amd64, семейство: windows 26.10.2012
  • Я могу думать только о следующем: 1) удалить переменную MAVEN_HOME, она не нужна (и из env, и из PATH); 2) перезагрузить ПК. 26.10.2012
  • M2_HOME не требуется для Maven 3.x 26.10.2012
  • Итак... MAVEN_HOME и M2_HOME не требуются для Maven 3? Если да, то как система находит мою папку Maven? Изменить: я только что удалил M2_HOME из среды и из PATH, и теперь он работает. Большое тебе спасибо!!! 26.10.2012
  • Оставьте M2_HOME и удалите MAVEN_HOME (см. инструкции здесь). 26.10.2012
  • Я заменил MAVEN_HOME на M2_HOME, и он все еще работает. Спасибо @AndrewLogvinov 26.10.2012

Ответы:


1

Вам нужно установить только следующие переменные среды:

JAVA_HOME=C:\Program Files\Java\jdk1.6.0_35
MAVEN_HOME=D:\software\apache-maven-3.0.4
PATH=%PATH%;%MAVEN_HOME%\bin;%JAVA_HOME%\bin

Обратите внимание, используйте D: вместо d:

26.10.2012
  • Спасибо! Но я думал, что Windows не чувствительна к регистру. Я все равно поменяю. 26.10.2012

  • 2

    Я использую apache-maven-3.3.1 и вижу ту же проблему с Альберто, который я тестировал и обнаружил, что ошибка может произойти, когда вы запускаете команду в каталоге, например: "C:\" "D:\" "E:\".. , Должен идти как минимум в 1 папку, например: "D:\TestApp"

    27.04.2015
  • Невероятно. Это сводило меня с ума 17.01.2017

  • 3

    Попробуйте изменить JAVA_HOME="C:\Program Files\Java\jdk1.6.0_35"

    26.10.2012
  • Привет, спасибо за ответ. Это значение переменной среды JAVA_HOME, которое я установил (это третья переменная, которую я вставил). Любая другая идея? :( 26.10.2012
  • M2_HOME не требуется для Maven 3.x 26.10.2012
  • Я только что удалил M2_HOME из среды и из PATH, и теперь это работает. Большое тебе спасибо!!! 26.10.2012

  • 4

    Я создал папку P:\projects.

    Я запустил mvn внутри этой папки. mvn работал, как и ожидалось.

    Я изменил каталог на P:\ для запуска mvn. mvn выпалил ошибку с советом по использованию java, как показано в этом вопросе.

    Я обнаружил, разорвав mvn.bat, что Maven не может принять свойство JVM.

    "-Dmaven.multiModuleProjectDirectory=P:\"

    когда это значение является корневой папкой устройства.

    В линуксе еще не пробовал.

    Кстати, я также обнаружил, что mvn содержит сообщение об ошибке с неправильным написанием. Сообщение об ошибке: «multiModuleProjectDirectory свойство не определено». Сначала я дислексически прочитал: «multiModuleProjectDirectory неправильно определен».

    25.03.2015

    5
    >I found that Maven cannot accept the JVM >property 
    >
    >
    >"-Dmaven.multiModuleProjectDirectory=P:\"
    >
    >when it's value is the root folder of a device.
    

    Любой каталог, кроме c:\ в качестве текущего каталога и теперь...

    mvn -v works.  
    
    20.08.2015
  • Пожалуйста, держите ответы только на ответ, а не на комментарии о том, как вы его достигли. Мы хотим, чтобы StackOverflow ограничивался только вопросами и ответами. 25.09.2015
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..