Как мне прикрепить файлы свойств к банке? - PullRequest
4 голосов
/ 22 января 2009

У меня есть проект, который использует последовательный порт, и для его запуска требуются два файла: файл win32.dll (который находится в папке bin среды выполнения java) и файл javax.comm.properties (который находится в папка lib среды выполнения Java). Когда я запускаю проект из eclipse, он работает, но когда я пытаюсь создать JAR-файл для распространения, он не работает. Я подозреваю, что это потому, что DLL-файлы и файлы свойств не включены в JAR. Как мне указать, что они должны быть там?

Ответы [ 4 ]

3 голосов
/ 23 января 2009

Обычно вы не помещаете файлы dll и свойства в jar. Файлы свойств, а также другие файлы JAR должны быть добавлены в путь к классам. Файл jar содержит файл манифеста, который определяет используемый путь к классам. Вы не можете редактировать это с затмением. Вам нужно определить файл ant build.xml и сделать что-то вроде этого:

<jar jarfile="${dist}/MyJar.jar" basedir="${build}">
  <manifest>
    <attribute name="Main-Class" value="MyClass"/>
    <attribute name="Class-Path" value="."/>
  </manifest>
</jar>

Затем поместите файл свойств в ту же папку, что и jar. Вы можете запустить цель ant, щелкнув правой кнопкой мыши файл build.xml и выбрав «Запуск от цели Ant».

Если я правильно помню, размещение dll-файла в каталоге bin jre будет работать.

2 голосов
/ 22 января 2009

Я думаю, javax.comm.properties просто должен быть на вашем пути к классам. Вы можете добавить его на верхний уровень поставляемой вами банки.

InputStream is = MainClass.class.getResourceAsStream ("javax.comm.properties"); if (is == null) {свойства отсутствуют ....}

Я думаю, что win32.dll просто должен быть в% PATH% (windows) или $ LD_LIBRARY_PATH (unix) ......

0 голосов
/ 23 января 2009

С помощью Ant вы можете упаковать все, что хотите, в свой Jar. Так что пусть Ant создаст ваш Jar, а не Eclipse :)

0 голосов
/ 22 января 2009

JAR-файл - это просто обычный zip-файл. Если вы хотите добавить в него файлы, просто используйте такой инструмент, как winzip.

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