Java Info.plist Key Reference for Mac에 따르면 $ APP_PACKAGE 변수를 사용하여 Mac 응용 프로그램 번들의 루트 디렉토리에 액세스 할 수 있어야합니다. 그래서 나는 목차/자원/폴더에 파일을 저장하고 그러나
new File("$APP_PACKAGE/Contents/Resources/MyFile.txt")
를 호출하여 액세스 할 수 있는지 그림이 작동하지 않고 단순히 오류를 찾을 수없는 파일을 얻을. 그 중요한 경우,
new File("$APP_PACKAGE/Contents").exists() //Returns false
System.out.printline(new File("$APP_PACKAGE").getParent()) //Returns an empty string
내가 맥 OS X 응용 프로그램 번들로 이클립스의 수출을 사용하여 맥 OS X 번들을 생성했다 : 또한, 나는 내가 문제를 좁힐 수 있는지 확인하기 위해 다음과 같은 노력했습니다. 어떤 도움 (또는 적절한 해결 방법)을 부탁드립니다!
System.getenv ("APP_PACKAGE")가 나를 위해 빈 문자열을 반환합니다. – Thunderforge
@Thunderforge 작동하는 경우 제 편집보기. – Alex
Mac OS X 번들 (필요한 모든 JAR 파일을 보유하고있는 Resources 폴더 안에 Java 폴더가 있음)의 구조가 정확합니다. 불행히도 ../Resources/YourFile.txt가 작동하지 않고 새로운 File ("."). getAbsolutePath()가 NullPointerException을 발생시킵니다. getPath()와 동일합니다. – Thunderforge