Задача Ant для составления форм GUI (Intellij IDEA) - PullRequest
7 голосов
/ 08 августа 2010

Как я могу создать задачу Ant для компиляции форм GUI (XML) в Intellij IDEA?Я использую Scala и Java в своем проекте.Java только для класса GUI, и я создаю его с помощью Intellij IDEA UI Designer.

Ответы [ 5 ]

9 голосов
/ 11 сентября 2015

Пожалуйста, не бейте меня, но после установки диалога 'Generate Ant Build', например:

enter image description here

ошибки исчезли:

enter image description here

5 голосов
/ 08 августа 2010

IDEA предоставляет задачу Ant, javac2, которая делает это.Это замена для стандартной задачи Ant javac.

Во-первых, вам нужно добавить что-то вроде следующего в верхней части файла сборки Ant.

<path id="javac2.class.path">
    <pathelement location="${idea.dir}/redist/forms_rt.jar"/>
    <pathelement location="${idea.dir}/redist/javac2.jar"/>
    <pathelement location="${idea.dir}/redist/annotations.jar"/>
</path>
<taskdef name="javac2" classname="com.intellij.ant.Javac2" classpathref="javac2.class.path"/>

Здесь«$ {idea.dir}» относится к каталогу вашей установки IDEA.Эти банки можно распространять, так что вы можете скопировать их в свой проект, если хотите, и обратиться к ним там.Как только вы это сделаете, просто замените любые вызовы для задач «javac» на «javac2», и все должно просто работать.

Для компиляции scala, конечно, вам понадобятся вызовы либо к scalac, либо к fsc, но это никак не влияет на все это.

2 голосов
/ 22 сентября 2010

Та же проблема здесь. Решено так:

<property  name="idea.lib" value="C:\\Program Files (x86)\\JetBrains\\IntelliJ IDEA Community Edition 9.0.3\\lib"/>

<path id="javac2.classpath">
    <pathelement location="${idea.lib}/javac2.jar"/>
    <pathelement location="${idea.lib}/jdom.jar"/>
    <pathelement location="${idea.lib}/asm.jar"/>
    <pathelement location="${idea.lib}/asm-commons.jar"/>
    <pathelement location="${idea.lib}/jgoodies-forms.jar"/>
</path>
<taskdef name="javac2" classname="com.intellij.ant.Javac2" classpathref="javac2.classpath"/>
1 голос
/ 26 июля 2015

Вот правильный путь:

<property  name="javac2.home" value="C:\\Program Files (x86)\\JetBrains\\\IntelliJ IDEA 14.1.4\\lib"/>
<path id="javac2.classpath">
      <pathelement location="${javac2.home}/asm.jar"/>
      <pathelement location="${javac2.home}/asm-all.jar"/>
      <pathelement location="${javac2.home}/javac2.jar"/>
      <pathelement location="${javac2.home}/jdom.jar"/>
      <pathelement location="${javac2.home}/asm-commons.jar"/>
      <pathelement location="${javac2.home}/jgoodies-forms.jar"/>
 </path>

Работает как для Intellij Community, так и для Ultimate. Проверено в обоих. Просто измените его на путь к Intellij Community, например, "IntelliJ IDEA Community Edition 14.1.4".

1 голос
/ 15 августа 2014

Так как это происходит в Google, вот что нужно:

<property name="javac2.home" value="${idea.home}/lib"/>
<path id="javac2.classpath">
    <pathelement location="${javac2.home}/asm.jar"/>
    <pathelement location="${javac2.home}/asm-all.jar"/>
    <pathelement location="${javac2.home}/javac2.jar"/>
    <pathelement location="${javac2.home}/jdom.jar"/>
    <pathelement location="${javac2.home}/asm-commons.jar"/>
    <pathelement location="${javac2.home}/jgoodies-forms.jar"/>
</path>

Ключ asm и asm-all, который решает ошибки ClassReader и ClassWriter. Я должен был смотреть в банки, чтобы выяснить это. «javac2.home» будет зависеть от ОС. Это на Intellij Ultimate.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...