2012-03-02 2 views
6

Кто-нибудь знает, как установить дополнительные переменные среды для скрипта ant из intellij-idea/rubimine? Часть муравьиной скрипт, который использует переменную среды выглядит, как показано ниже:установить переменные окружения для ant script

<property environment="env"/> 
    <fail unless="env.IDEA_HOME" message="IDEA_HOME must be set."/> 

То, что я пытался до сих пор:

  • Передача переменной среды при запуске в IntelliJ
  • Настройки -> Путь Переменные
  • Ant Build -> Свойства
  • Ant Build -> Исполнение -> Ant командной строки
+0

Вариант 1 работал бы. (работает для меня) – Jayan

+0

Вкладка Ant Build/Properties/Properties/укажите полное имя переменной, поэтому в вашем случае будет env.IDEA_HOME в качестве имени. – dvd

+0

Общая проблема, с которой я сталкиваюсь, заключается в том, как можно экспортировать настройку идеи, которая является конкретным проектом или идеей (установленным в идее UI для своих оппонентов), int ant invocation, так что значение наследуется от значения ide или проекта при вызове time: имеют макросы, представляющие параметры IDE, которые можно использовать для присвоения свойствам «Структура проекта» свойствам ant accessable, т.е.: IDEA_HOME для, JAVA_HOME = «Project SDK», «Project Root», где находится «iside» »« Язык Java Level "," Build Output Dir "," Project Name "и т. Д. – peterk

ответ

2

Вы можете установить переменные в качестве дополнительных параметров командной строки. Вот скриншот.

enter image description here

И тогда мой выход:

echoproperties 
#Ant properties 
#Sun Mar 04 04:48:30 EST 2012 
\==-buildfile 
ant.core.lib=E\:\\IntelliJ IDEA 114.145\\lib\\ant\\lib\\ant.jar 
ant.file=E\:\\IdeaProjects\\psiviewer\\build.xml 
ant.file.psiviewer=E\:\\IdeaProjects\\psiviewer\\build.xml 
ant.file.type=file 
ant.file.type.psiviewer=file 
ant.home=E\:\\IntelliJ IDEA 114.145\\lib\\ant 
ant.java.version=1.6 
ant.library.dir=E\:\\IntelliJ IDEA 114.145\\lib\\ant\\lib 
ant.project.default-target=all 
ant.project.name=psiviewer 
ant.version=Apache Ant(TM) version 1.8.2 compiled on December 20 2010 
awt.toolkit=sun.awt.windows.WToolkit 
basedir=E\:\\IdeaProjects\\psiviewer 
dir.idea=e\:/idea11 
file.encoding=windows-1252 
file.encoding.pkg=sun.io 

Вы видите dir.idea установлен на то, что мы перешли к муравью.

+0

Есть ли какой-либо способ получить местоположение программно в идее, используя макрос и т. д. Это для текущего экземпляра идеи, вызывающей сценарий, так что не нужно менять настройку всякий раз, когда другой пользователь запускает сборку или находится на другом компьютере или у вас есть старая версия, если идея установлена? – peterk

+0

Это устанавливает свойства относительно модуля - не наследуется от корневой конфигурации проекта, которая вызывает сборку модуля. Это желание - модуль может присутствовать в нескольких проектах и ​​знать, какой проект вызвал сборку, - в моем случае, зная корень «.idea» проекта, который строит модуль. – peterk

1

Проблема: Запуск муравьев строить в IntelliJ, пусть муравей свойство сборки использовать IntelliJ Путь Переменные дорожим

Решение:

  1. Добавлен путь переменной QC1_SHELL_DEPLOY в IntelliJ IntelliJ Settings ->Path Variables
  2. В вашей Ant Build window (views -> Tool Windows -> Ant Build), щелкните правой кнопкой мыши на муравья сценарий (при условии, что у вас есть один добавленный), нажмите свойства. создать объект для ant script qc_deploy_dir. property for ant script with arbitrary value

  3. Открыть ant.xml в вашем проекте .idea/ant.xml, измените строку определения qc_deploy_dir использовать IntelliJ Path Variable $ QC1_SHELL_DEPLOY property change for ant.xml

  4. Вернитесь к вашему Свойства окно для муравейника, теперь qc_deploy_dir набирает QC1_SHELL_DEPLOY Оценка е.

Смежные вопросы