2016-08-08 3 views
1

내 JavaFX 프로젝트가 한 시스템에서 이미지를로드 할 수 있지만 같은 코드가 다른 시스템에서 이미지를로드 할 수 없습니다.JavaFX - 프로젝트 내에서 이미지를로드 할 수 없습니다.

패키지 구조 (src에 있음) -/com/mypackagestructure/view/images /이며 이미지 파일을 보유하고 있습니다.

내가에서 CSS 파일이 - /com/mypackagestructure/view/Login.css

Login.css 
.root { 
    -fx-background-image: url("/com/mypackagestructure/view/images/background.jpg"); 
    -fx-background-repeat: stretch; 
    -fx-background-size: 100%; 
    -fx-background-color: transparent; 
} 

내가 다른 컴퓨터에서이 동일한 코드 (같은 OS, 같은 이클립스 IDE와 JDK/JRE가 (1.8) 설치) 거기서 작동합니다. 하지만이 기계에서 나는 다음과 같은 메시지를 받는다.

Aug 08, 2016 3:36:39 PM com.sun.javafx.css.StyleManager getCachedImage 
WARNING: Error loading image: file:/com/mypackagestructure/view/images/background.jpg 

나는 다음과 같이 변경하면 작동한다.

-fx-background-image: url("images/background.jpg"); 

내 이미지 파일을 참조하는 방식에 어떤 문제가 있습니까? 왜 다른 컴퓨터가 아닌 다른 컴퓨터에서 작동합니까?

답변

1

나는 또한 당신이 가진 것과 같은 문제를 경험했습니다. 이러한 것들은 파일을 빌드하기 때문에 때로는 발생합니다. 그리고 파일을 정리하고 빌드 할 수 있습니다.

기본적으로 -fx-background-image를 정의하는 경우 : url ("images/background.jpg"); 이미지의 프로젝트 패키지 위치를 직접 참조하십시오. 당신이 당신의 이전 방법으로 정의하려는 경우

, 당신은 모든 완전한 디렉토리 예를 들어 C와 함께 아래로 작성해야합니다 : 사용자 \ \ NILAM \ 문서 \ NetBeansProjects Aplikasi Arsip Kesbangpol \ \ SRC \ 엔터테인먼트가 \ image.jpg를

잘하면 답변 해주세요. 내가 (C 드라이브에 절대 경로를 사용하는 경우

+0

예, 그것은 작동합니다. \ \ \ \ 하지만 그것은 JAR 어디서나 할 수 있습니다 실행 시간 등의 문제를 해결 나던 지금은 오직 상대. 경로가 작동하지만 절대 경로는이 컴퓨터에서 작동하지 않습니다. 예, 여러 번 반복하여 청소를 시도했습니다. – iMan

+0

절대 경로를 사용하려면 +1 – iMan

+0

을 +1하고 대답을 얻지 마십시오. C : \\ Users \\ NILAM \\ Documents \\ NetBeansProjects \\ Aplikasi Arsip Kesbangpol \\ src \\ Gambar \\ image.jpg – user4073072

관련 문제