Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java tools & IDE's > Maven. Файл из другого модуля


Автор: Старовъръ 12.5.2009, 12:38
Как обратиться к файлу, который находится в другом модуле? Какой у него должен быть относительный путь?

Автор: LSD 12.5.2009, 12:54
Код

${project.basedir}/../AnotherModule/src/resources/afile.bin

Автор: Старовъръ 12.5.2009, 14:19
Мм.. я, наверное, неверно выразился. Проект компилируется и тестируется мавеном, а мне в классе нужно прописать 
Код
File file = new File("файл из другого модуля");
Если поставить "/" вначале, то путь начинается с корня локального диска, если ничего не ставить, то сначала идет текущий_модуль/прописанный_путь. Если поставить "..", то две точки интерпретируются как... мм... две точки smile
Вот такие пироги.

Автор: LSD 12.5.2009, 15:06
Добавь зависимость от этого артифакта и потом загружай его с помощью Class.getResourceAsStream().

Добавлено через 1 минуту и 22 секунды
Или:
Код

<project>
  [...]
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.4.2</version>
        <configuration>
          <systemProperties>
            <property>
              <name>my-file-path</name>
              <value>${project.basedir}/../AnotherModule/src/resources/afile.bin</value>
            </property>
          </systemProperties>
        </configuration>
      </plugin>
    </plugins>
  </build>
  [...]
</project>


Автор: Старовъръ 12.5.2009, 16:31
1.
Цитата

Добавь зависимость от этого артифакта и потом загружай его с помощью Class.getResourceAsStream().

В данном случае не выйдет: мне нужен объект типа File, дабы получить список файлов в каталоге и работать с ними. 
2. Устанавливать системные свойства это, наверное, нагло, но это работает! Пасибо! smile

Автор: LSD 12.5.2009, 17:54
Цитата(Старовъръ @  12.5.2009,  16:31 Найти цитируемый пост)
Устанавливать системные свойства это, наверное, нагло

Ничего подобного, Maven часто сам так делает. Это нормальная практика. Главное чтобы они не конфликтовали со стандартными свойствами.

И не забывай помечать вопрос как решенный smile 

Автор: Старовъръ 15.5.2009, 11:13
Ой, прошу прощения smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)