Witam,
mam problem z pobraniem pliku *.properties. Próbowałem już dziesiątki rozwiązań ze SO ale żadne nie działa. Nie mam pojęcia co może nie grać. Drzewo projektu:
server
├─ .vscode
│ └─ settings.json
├─ pom.xml
├─ src
│ ├─ main
│ │ ├─ java
│ │ │ └─ pw
│ │ │ ├─ Config.java
│ │ │ ├─ GameEventHandler.java
│ │ │ ├─ GameManager.java
│ │ │ ├─ GameResponseDispatcher.java
│ │ │ ├─ GameServerInitializer.java
│ │ │ ├─ GameServerMain.java
│ │ │ ├─ HttpRequestHandler.java
│ │ │ ├─ LoggerManager.java
│ │ │ ├─ Player.java
│ │ │ ├─ TextWebSocketFrameHandler.java
│ │ │ └─ WebSocketServer.java
│ │ └─ resources
│ │ ├─ configuration.properties
│ │ └─ logger.properties
│ └─ test
│ └─ java
│ └─ pw
│ └─ AppTest.java
└─ target
Tutaj kod w którym wykorzystuję ResourceBundle
package pw;
import java.util.ResourceBundle;
import java.util.logging.Logger;
public class GameServerMain {
private final static Logger LOG = LoggerManager.GetLogger(GameServerMain.class.getName());
public static void main(String[] args) {
final ResourceBundle configurationBundle = ResourceBundle.getBundle("configuration");
int port = Integer.valueOf(configurationBundle.getString("port"));
WebSocketServer pWebSocketServer = new WebSocketServer();
pWebSocketServer.start(port);
LOG.info("Server started");
}
}
I stacktrace:
Exception in thread "main" java.lang.ExceptionInInitializerError
at pw.GameServerMain.<clinit>(GameServerMain.java:7)
Caused by: java.lang.NullPointerException: inStream parameter is null
at java.base/java.util.Objects.requireNonNull(Objects.java:246)
at java.base/java.util.Properties.load(Properties.java:407)
at java.logging/java.util.logging.LogManager.readConfiguration(LogManager.java:1579)
at pw.LoggerManager.<clinit>(LoggerManager.java:18)
... 1 more
Możecie mi proszę podpowiedzieć jak się z tym uporać i poprawnie załadować plik properties? Będę bardzo wdzięczny za pomoc.