2017-01-03 19 views
0

현재 프로젝트를 완료했지만 내보낼 때 작동하지 않습니다. 필자는 JAXB를 사용하여 XML 파일을 읽고 쓰며 POS-Printer를 사용하는 데 필요한 다른 외부 폴더에도 의존합니다.외부 JavaPOS 파일로 JAR로 내보내기

상대 경로가 아닌 절대 경로로 외부 XML 저장 파일을 연결할 수있었습니다. 그래서 내가 원하는 방식이 아니었지만 효과가있었습니다. 그러나 프린터의 외부 클래스 폴더 사용은 전혀 작동하지 않았습니다.

즉, 이클립스 프로젝트 빌드 경로에는 필요한 모든 파일 (jar뿐만 아니라 하나씩 작업을 추가하는)이 모두 들어있는 클래스 폴더가 추가되었음을 의미합니다. 따라서 프로젝트를 jar 파일로 내보내는 것은 모든 파일을 jar 파일 자체에 포함 시키거나 전혀 포함시키지 않습니다. 모든 것이 Eclipse에서 완벽하게 작동하지만 내보낼 때는 그렇지 않습니다.

내 폴더 구조는 다음과 같습니다

src 
    /model 
    /view 
    /control 
data 
    /articles.xml 
    /... 
JavaPOS <--- needed folder with all its files 
    /jpos.xml 
    /xerxers.jar 
    /swt-..-.dll 

나는 시도했다 :.

  • 에는 InputStream은 = getClass() 같이 getResourceAsStream (URL);

  • 절대 경로

  • 매니페스트 파일 및/또는 항아리 구조 옵션의 거의 모든 조합

  • 라이브러리 내부의 파일을 넣어 "로와

  • 실행 가능한 비 실행 가능한 단지를 조작 손 "

  • 프로젝트의 빌드 경로 변경

내 질문은 :

은 어떻게 항아리 파일이 파일이 어디에 있는지 알을받을 수 있나요?

편집 :

당신이 메이븐 또는 개미 파일이 내 문제를 해결할 수 있다고 생각합니까? 나는 그런 경험이 없다.

답변

0

문제는 하나 이상의 JRE가 설치되어 있고 한 일식이 사용 중이며 모든 dll 파일을 가지고 있지만 다른 것들은 없었습니다. 프린터의 드라이버를 다시 설치해도 아무런 변화가 없었기 때문에 수동으로 추가해야했습니다. 어떻게 든 고쳐야 겠지만, 지금은 효과가 있고 그것이 내가 원하는 전부입니다.

내가 그 폴더를 필요로하지 않았다는 사실은 단 하나의 파일과 누락 된 dll이 필요하다는 것으로 밝혀졌습니다.