Вот как я тестировал (извините, не maven)!
Основной класс:
package cfh.sf.Chamika;
import java.util.ResourceBundle;
public class ABC {
public static void main(String[] args) {
var bundle = ResourceBundle.getBundle("conf");
System.out.println(bundle.getString("test"));
}
}
Файл манифеста, обратите внимание на пустую строку в конце (записи должны заканчиваться новой строкой (CR , LF или CRLF)):
Manifest-Version: 1.0
Main-Class: cfh.sf.Chamika.ABC
Class-Path: config/
Структура каталогов
dist/
abc.jar
config/
conf.properties
Содержимое conf.properties
:
test = OK, it is working!
Выполнено с
java -jar abc.jar
Альтернатива, не используется ResourceBundle
:
package cfh.sf.Chamika;
import java.io.IOException;
public class ABC {
public static void main(String[] args) {
try (var input = ClassLoader.getSystemResourceAsStream("conf.properties")) {
int ch;
while ((ch = input.read()) != -1) {
System.out.print((char) ch);
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
}