2011-02-04 3 views
2

В последнее время я немного запутался в отношении классов в файлах Manifest.mf. Так что я хочу, чтобы передать некоторые properties.files из моего дистрибутива.jar и поместить их рядом с ним, не изменяя файлы java-source.Что означает одиночная точка (".") В распределении Manifest.mf?

Следующий пример: В это время я могу открыть свойства-файл, как это:

this.getClass().getClassLoader().getRessourceAsStream("/config/jdbc.properties"); 

В jdbc.properties расположены в затмении sourcefolder под названием «ресурсы» с пакетом под названием 'конфигурации. Теперь, когда я создаю дистрибутив, я передаю их в папку рядом с дистрибутивом. Jar, но я все равно не нахожу их без изменения отображаемого кода источника.

только generell раствор, который работал до сих пор (без absolout трактов) был следующим manifest.mf:

Manifest-Version: 1.0 
Ant-Version: Apache Ant 1.7.1 
Created-By: 17.1-b03 (Sun Microsystems Inc.) 
Main-Class: com.ymene.Main 
Class-Path: . 

"" в классе-пути, кажется, указывает на корень .jar? Я никогда раньше этого не видел в файлах манифеста. Поэтому я удивляюсь, если это правильный подход, чтобы достичь моего желания не менять свой код java-source вообще, независимо от того, будет ли ресурс строиться внутри или за пределами банки, пока путь будет таким же.

Может ли кто-нибудь сказать мне, если "." в файле manifest.fm будут какие-либо нежелательные побочные эффекты для меня? И если это не так, возможно ли сгенерировать эту запись Manifest.mf Class-Path («.» Я имею в виду) с Ant? Или есть ли другое решение для достижения этого?

Заранее спасибо за любую помощь по этому вопросу, ymene

ответ

4

Единая точка означает «этот каталог».

+0

И «этот каталог» в этом специальном случае означает каталог файла manifest.mf внутри .jar? Это было бы смутно для меня, так как патч не должен работать вообще, или есть ли еще часть, которую мне не хватает? – crusam

+1

Нет, это означает путь, по которому помещается файл jar. Если вы используете библиотеки в подкаталоге типа «lib /», вы должны указать каждую банку в разделе класса-пути манифеста. – Matten