0

Я пытаюсь создать базовую программу, используя XTend для Intellij 15.0.5 (Ultimate), но по какой-то причине я не могу запускать/компилировать любые файлы «.xtend».Невозможно скомпилировать классы XTend в Intellij

Дать следующий код не является проблемой, и проверяет, язь синтаксических ошибок, как и ожидалось:

package presentation 

class Greeter { 
    def static void main(String[] args){ 
     println("Hello World!"); 
    } 
} 

Я скачал и установил пользовательский язык плагин, и я могу создать новый Java-проект с Xtend. Тем не менее, I не может запускать/компилировать любые файлы xtend.

При выполнении щелчка правой кнопкой мыши по файлу xtend нет «запуска». Более интересно, Intellij позволяет мне рефакторировать нормальные классы Java в классы xtend. Кроме того, я не могу выбрать Greeter как основной класс в конфигурации запуска.

Конечно, я также добавил обязательные библиотеки (ядро, lib и макрос). Я действительно не знаю, чего мне не хватает, но я полагаю, что это должно быть что-то очень очевидное. Помимо запуска/компиляции все, похоже, работает как шарм.

ответ

0

У меня была аналогичная проблема, так как я только начинаю с Xtend.

Насколько я могу судить, вы не запускаете файлы Xtend так же, как вы запускаете/компилируете java-файлы, которые автоматически генерируются Xtext (используется система анализатора Xtend).

Проблема, с которой я столкнулся (и тот, который у вас есть), был вызван модулем, не включающим генерацию Xtend. После многих проблем, связанных с расстройствами, я исправил эту проблему, открыв страницу «Структура проекта», нажав вкладку «Модули», выбрав мой желаемый модуль, щелкнув значок «зеленый плюс», а затем выбрав «Xtend» из результирующего меню.

Затем он должен показать панель с множеством опций (вы должны оставить их так, как они есть сейчас, а затем нажмите «ОК»).

IntelliJ затем автоматически создает файл java для каждого файла xtend. Чтобы запустить проект, вы просто настраиваете приложение для запуска приложения, чтобы оно указывало на сгенерированный файл java, содержащий ваш основной метод, и тогда вы должны быть добрым.

Надеюсь, это поможет.

+0

Благодарим вас за быстрый ответ! Тем не менее, у меня нет меню «xtend», когда я нажимаю на зеленый плюс:/ Кроме того, ни один из классов, которые я пишу, не перезаписывается в папку xtend-src. – ImaginaryNumb3r

+0

У меня уже был модуль, но target/xtend-gen/main не был помечен как исходная папка, как только я это сделал, он сработал. –