У меня такая ошибка в eclipse helios:
Исключение при выполнении командной строки. Не удается запустить программу «C: \ Program Files (x86) \ Java \ jre6 \ bin \ javaw.exe» (в каталоге «C: \ Users \ motiver \ helios_workspace \ TimeTracker»): ошибка CreateProcess = 206, имя файла или расширение слишком долго
Я немного исследовал, но большинство проблем были связаны с DataNucleus при работе над Google App Engine. Но я не использую ничего отдаленно связанного с Google App Engine. Я делаю небольшой проект с Servlet 3.0 на JBOSS 6. Я использую Hibernate 4.1.2 для ORM и RESTEasy, чтобы открыть веб-службу. Я создал файл util, в котором есть метод main (), который в основном удаляет и воссоздает схему. Я запускаю методы main (), когда мне нужна чистая база данных для целей тестирования. Он отлично работал на Tomcat 7, но перестал работать, когда я перешел на JBoss 6.
Мы будем благодарны за любые подсказки или решения.
C:\Program Files (x86)\Java\jre6\bin\javaw.exe
длинный или другойC:\Users\motiver\helios_workspace\TimeTracker
. У меня такая же проблема.Ответы:
Простого (в пару кликов или простой команды) решения этой проблемы не существует.
Цитируя некоторые ответы в этом отчете об ошибке на Eclipse.org , это обходные пути. Выберите тот, который наименее болезненен для вас:
Обновление : после июля 2014 года есть способ лучше (благодаря ответу @ Brad-Mace ниже :
Если вы создали свой собственный файл сборки вместо использования
Project -> Generate Javadocs
, вы можете добавитьuseexternalfile="yes"
в Javadoc задачу, которая разработана специально для решения этой проблемы.источник
-classpath
аргумент был сгенерирован, чтобы содержать все зависимости. Так, что - то вроде этого вышло:C:\Users\myself\.m2\repository\…;C:\Users\myself\.m2\repository\…[…tons more]
. Перемещение моего локального кеша репозитория maven в свое дело: путь кD:\m2
классам сократился доD:\m2\…;D:\m2\…
- бинго! Не забудьте указатьlocalRepository
путь в конфигурации maven.Если вы создаете свой собственный файл сборки, а не используете,
Project -> Generate Javadocs
вы можете добавитьuseexternalfile="yes"
кjavadoc
задаче, которая разработана специально для решения этой проблемы.источник
Сегодня я столкнулся с этой проблемой, и я смог решить ее с помощью этого плагина Gradle
Это URL-адрес github:
ЕСЛИ вы, как и я, понятия не имеете, что такое Gradle, но вам нужно запустить бэкэнд, чтобы выполнять свою работу с внешним интерфейсом, вам нужно найти файл build.gradle, который вызывается для запуска вашего сервера BE, и добавить его в вершина:
источник
attributes["Main-Class"]
Отвечая на свой вопрос здесь, чтобы решение не было утоплено в комментариях. Я экспортировал проект как запускаемый jar из eclipse и выполнил командную строку «java -jar MyJar.jar», и он отлично работает
источник
Попробуйте обновить версию Eclipse, проблема была закрыта недавно (12 марта 2013 г.). Проверьте отчет об ошибке https://bugs.eclipse.org/bugs/show_bug.cgi?id=327193
источник
Это не специально для eclipse, но я решил обойти это, создав символическую ссылку на мой репозиторий maven и указав ее на что-то вроде «C: \ R». Затем я добавил в свой файл settings.xml следующее:
Путь к репозиторию maven способствовал возникновению проблем с длиной на моей машине с Windows.
источник
В intellij есть опция «сократить командную строку», выбрать «JAR manifest» или «@argFiles» решит проблему, в основном это поместит ваш длинный путь к классу в файл jar или временный файл.
источник
Вопрос старый, но актуальный. Я часто сталкиваюсь с этой ситуацией, когда к моей команде присоединяется новый участник или к существующему коду добавляется новый сегмент кода. Простой обходной путь, которому мы следуем, - это «уменьшить путь к классам» путем перемещения вверх по каталогам.
Как уже упоминалось, это не относится к затмению. Я также сталкивался с этой проблемой в IntelliJ Idea 14 и 2018.
После долгих исследований я нашел решение - установить
в javc файла сборки ant.
Вот так теперь выглядит мой Ant build javac. Чтобы узнать больше о fork, обратитесь к документации ant.
источник
В отчете об ошибке ошибка 327193 считается исправленной, но недавно это случилось со мной с Eclipse Kepler 4.3.2.
Загрузите патч для Eclipse Juno или новее:
https://bugs.eclipse.org/bugs/attachment.cgi?id=216593
источник
Попробуй это:
источник
Чтобы решить эту проблему:
Если вы используете Eclipse:
Переместить репозиторий .m2 в
c: \ Перейдите в Eclipse> Windows / Preferences / Maven / User Settings -> Создайте свой собственный файл settings.xml с его содержимым:
Если вы используете IntelliJ: перейдите в IntelliJ> щелкните правой кнопкой мыши на «pom.xml»> maven> создайте «settings.xml»
с его содержанием:
источник
У меня такая же ошибка при вызове Maven.
Основная причина моей проблемы заключалась в том, что она
classpath
была очень огромной. Обновление пути к классам устранило проблему.Есть несколько способов обновить большой путь к классам, как упоминалось в этом: Как установить длинный путь к классам Java в Windows?
Поскольку я использую Intellij, они предоставляют возможность использовать файл аргументов, который я использовал.
источник
Updating the classpath
- как?Попробуйте добавить это в файл build.gradle (
gradle version 4.10.x
) и убедитесь, чтоcom.xxx.MainClass
это класс, в котором находится ваш основной метод:Вышеупомянутое изменение должно решить проблему, есть другой способ использования
run.sh
приведенного ниже сценария, который может решить эту проблему, но это будет скорее исправление командной строки, а не запуск в IntelliJgradle bootRun
.источник
это происходит из-за того, что DataNucleus иногда перезаписывает аргументы с множеством путей.
Вы должны перезаписать их следующим образом:
-enhancerName ASM -api JDO -pu MediaToGo
Надеюсь помочь вам!
источник
Правильный ответ из этой ветки был правильным ответом для моего особого случая. Укажите путь к папке ORM для datanucleus, безусловно, уменьшите компиляцию пути java.
https://stackoverflow.com/a/1219427/1469481
источник
Я получил ошибку ниже, когда запустил " ant deploy "
Исправлено, запустив перед ним команду ant clean .
источник
У меня такая же ошибка в студии Android. Мне удалось решить эту проблему, запустив Build -> Clean Project в IDE.
источник
Это из-за вашего длинного имени каталога проекта, которое в
CLASSPATH
целом дает вам очень длинный . Либо вам нужно уменьшить количество добавленных jar-файловCLASSPATH
(убедитесь, что удаляются только ненужные jar-файлы), либо лучше всего уменьшить каталог проекта и снова импортировать проект. Это уменьшитCLASSPATH
. У меня это сработало.источник
У меня была такая же проблема, но вместо этого я использовал netbeans.
Я нашел решение, поэтому делюсь здесь, потому что я нигде этого не нашел, поэтому, если у вас есть эта проблема с netbeans, попробуйте следующее:
(имена могут быть отключены, так как мои netbeans на португальском языке) Щелкните правой кнопкой мыши проект> свойства > сборка> компиляция> снимите флажок запускать компиляцию на внешней виртуальной машине.
источник
У меня такая же ошибка. Пробные решения, такие как очистка, восстановление, недействительность кеша, повторный запуск и т. Д., Но ничего не работает.
Я только что создал новую папку с коротким именем и скопировал все файлы (папку приложения, файлы gradle и т. Д.) В новую папку. Открыл приложение в студии Android и работает нормально.
источник
В моем случае ошибка проявлялась из-за того, что системная версия java отличалась от версии intellijj / eclipse java. Система и пользователь имели разные версии java. Если вы скомпилируете свой код с использованием одной версии и попытаетесь запустить с использованием другой версии, произойдет ошибка.
Короче говоря, убедитесь, что ваш код скомпилирован и запускается одной и той же версией java.
источник
Чтобы исправить эту ошибку ниже, я провел достаточно исследований, не получил отличного решения, я подготовил этот скрипт, и он работает нормально, подумал о том, чтобы поделиться с публикой, использовать его и сэкономить время.
Если вы используете инструмент сборки Gradle, а исполняемый файл находится в каталоге build / libs вашего приложения.
run.sh
-> создайте этот файл в корневом каталоге вашего проекта и скопируйте в него скрипт ниже, затем перейдите в git bash и введите run.sh, затем введите. Надеюсь это поможет!#!/bin/bash dir_name=`pwd` if [ $# == 1 ] && [ $1 == "debug" ] then port=$RANDOM quit=0 echo "Finding free port for debugging" while [ "$quit" -ne 1 ]; do netstat -anp | grep $port >> /dev/null if [ $? -gt 0 ]; then quit=1 else port=`expr $port + 1` fi done echo "Starting in Debug Mode on "$port gradle clean bootjar jar_name="build/libs/"`ls -l ./build/libs/|grep jar|grep -v grep|awk '{print $NF}'` #java -jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=$port $jar_name elif [ $# == 1 ] && [ $1 == 'help' ] then echo "please use this commands" echo "------------------------" echo "Start in Debug Mode: sh run.sh debug" echo "Start in Run Mode: sh run.sh" echo "------------------------" else gradle clean bootjar word_count=`ls -l ./build/libs/|grep jar|grep -v grep|wc -w` jar_name=`ls -l ./build/libs/|grep jar|grep -v grep|awk '{print $NF}'`
jar_path=build/libs/$jar_name echo $jar_name #java -jar $jar_path fi
Надеюсь это поможет!!
источник
Я использую устаревшую версию плагинов Gradle, и это плагин решил проблему для меня.
Использование (подробнее см. В источнике):
источник
На компьютере с Windows существует ограничение на имя файла jar / длину пути в командной строке, из-за чего вы видите сообщение об ошибке ниже, я много пытался искать, даже я пытался применить указанное выше решение по какой-то причине, это не сработало, я нашел рабочий фрагмент для Gradle (gradle-4.10.2-all.zip)
Ошибка:
CreateProcess error=206, The filename or extension is too long
Используйте этот ниже
gradle.build
фрагмент кода, чтобы исправить указанную выше проблему в IntelliJ или STS или затмить что-нибудь.Исправление кода Gradle:
источник
Как много людей грустно выше, есть много плагинов для Gradle, выполняющих обход в этой проблеме, например:
или
Но лучшим решением, которое я нашел, было убить процесс JVM, и все готово.
источник
Добавьте ниже в свой файл gradle:
См. Https://plugins.gradle.org/plugin/com.github.ManifestClasspath
источник