Запуск задачи JHipster Gradle из Intellij IDEA

Эта ошибка возникает, когда я запускаю Gradle через Intellij IDEA... но из консоли все работает нормально... кто-то знает почему?

Выполнение внешней задачи 'run --stacktrace'... :compileJava UP-TO-DATE :compileScala UP-TO-DATE :bower FAILED

org.gradle.api.tasks.TaskExecutionException: не удалось выполнить задачу ':bower'.

Вызвано: java.io.IOException: не удается запустить программу «bower» (в каталоге «/Users/eduardo/Development/projects/jhipster»): ошибка = 2, нет такого файла или каталога


person eduardoschmidtsantos    schedule 11.04.2015    source источник
comment
Где Бауэр? Не могли бы вы попробовать открыть Терминал в IDEA и попробовать, какую беседку может найти IDEA?   -  person longhua    schedule 11.04.2015
comment
из терминала в IDEA... все работает... какой беседка /Users/eduardo/.nvm/versions/node/v0.12.2/bin/bower   -  person eduardoschmidtsantos    schedule 11.04.2015
comment
Не могли бы вы выложить файл сборки?   -  person longhua    schedule 11.04.2015


Ответы (2)


Я связался с поддержкой JetBrains по этому поводу. Единственное, что они предложили, это запустить IntelliJ из командной строки, что у меня работает:

open -a "/Applications/IntelliJ IDEA 15.app"
person John Thompson    schedule 10.03.2016
comment
Это также работает для STS/Eclipse, запустив open -a Applications/STS.app - person Vineet Bhatia; 13.08.2016

Полагаю, вы используете IntelliJ на OSX, может быть, с предварительной установкой Bower?

Последние версии OSX (по крайней мере, 10.10.1) не позволяют легко установить PATH для графических приложений (похоже, у launchctl есть ошибка в отношении PATH). В сочетании с отсутствием возможности изменить текущую среду PATH для запуска подпроцессов в Java это приводит к невозможности найти исполняемый файл Bower. Полное изложение основной проблемы можно увидеть здесь (Настройка среды для ProcessBuilder) , но, по сути, IntelliJ должен правильно установить ваш PATH, чтобы можно было искать нестандартные PATH.

Мое решение на данный момент представляет собой полный хак, взятый с https://apple.stackexchange.com/a/51737 - по сути, создайте скрипт-оболочку:

создать /Application/IntelliJ\ IDEA\ 14.app/Contents/MacOS/idea.sh с содержимым:

#!/bin/sh

. ~/.bash_profile

logger "`dirname \"$0\"`/idea"

exec "`dirname \"$0\"`/idea" $@

затем chmod +x /Application/IntelliJ\ IDEA\ 14.app/Contents/MacOS/idea.sh

затем отредактируйте /Application/IntelliJ\ IDEA\ 14.app/Contents/Info.plist и установите CFBundleExecutable на idea.sh

наконец, запустите /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -v -f /Applications/IntelliJ\ IDEA\ 14.app

Это хак, но он работает... и пока Apple не исправит launchctl, это единственное решение, которое я придумал.

person Loki    schedule 04.05.2015
comment
Оно работает! Спасибо! Я использовал /Applications/... вместо /Application... - person TheKojuEffect; 26.07.2015
comment
не работает для меня. это потому что я использую IDEA 15? - person disorderdev; 18.01.2016
comment
Попробуйте изменить команду, чтобы использовать путь к вашей установке IntelliJ. - person Loki; 24.01.2016
comment
Больше не работает. OSX 10.11.3 и IntelliJ Idea 15 - person nucatus; 15.03.2016
comment
Это здорово, но гораздо проще сделать. Процедуру можно сократить до 3-х шагов: 1) переместить исполняемый файл idea в idea_app , 2) создать новый файл с именем idea и ввести туда свой шелл-скрипт, указать из него на idea_app 3) chmod +x idea — и готово. Ницца - person Moonwalker; 12.10.2016