Ela*_*da2 4 java macos logging log4j
我有这个 log4j.properties
在这条路:
? ls -l /Users/eladb/workspaceQa/MobileAutomationWebService/web-services/src/main/resources/log4j.properties [15:54:01]
-rw-r--r-- 1 eladb eng 853 Jun 27 15:41 /Users/eladb/workspaceQa/MobileAutomationWebService/web-services/src/main/resources/log4j.properties
Run Code Online (Sandbox Code Playgroud)
但是,当我运行我的应用程序时,我会在控制台中看到:
log4j: Trying to find [/Users/eladb/workspaceQa/MobileAutomationWebService/web-services/src/main/resources/log4j.properties] using context classloader sun.misc.Launcher$AppClassLoader@4e25154f.
log4j: Trying to find [/Users/eladb/workspaceQa/MobileAutomationWebService/web-services/src/main/resources/log4j.properties] using sun.misc.Launcher$AppClassLoader@4e25154f class loader.
log4j: Trying to find [/Users/eladb/workspaceQa/MobileAutomationWebService/web-services/src/main/resources/log4j.properties] using ClassLoader.getSystemResource().
log4j: Could not find resource: [/Users/eladb/workspaceQa/MobileAutomationWebService/web-services/src/main/resources/log4j.properties].
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
public class DeviceRepositoryFromJsonFile implements DeviceRepository {
final static Logger logger = Logger.getLogger(DeviceRepositoryFromJsonFile.class);
public DeviceRepositoryFromJsonFile() {
BasicConfigurator.configure();
filePath = Constants.devicesJsonPath;
jsonFileHandlerDevice = new JsonFileHandler<>(filePath);
devices = fetchFromFile();
}
Run Code Online (Sandbox Code Playgroud)
我正在使用gradle
我想念什么?
我今天亲自遇到了这个问题。
您需要做的就是file://在放置属性文件的路径以供log4j读取之前使用协议。
所以,你的道路会像
-Dlog4j.configuration=file:///Users/eladb/workspaceQa/MobileAutomationWebService/web-services/src/main/resources/log4j.properties
Run Code Online (Sandbox Code Playgroud)
希望它能帮助其他人迅速将他们指向正确的解决方案:)