javax.comm 을 이용한 jar 파일을 생성할때
거늘
안녕하세요 처음으로 글을 남깁니다.
제가 javax.comm 으로 시리얼 통신을 하는 프로그램을 짰습니다. 이걸 사용자에게 배포하기 위해 jar 파일을 만들었는데요
결론적으로 생성된 jar 파일을 더블클릭했을때 swing컴포넌트가 올라오면서 폼을 불러오는것은 성공했는데 통신에 관한 정보가 하나도 안올라 오네요
이것저것 많이 시도해 보았는데 잘 되지 않아서 이곳에 글을 올립니다.
저는 netbeans5.5.1 의 GUI builder를 사용하고 있고요 netbeans를 통해 jar 파일도 생성했습니다.(넷빈즈는 자동으로 jar 파일까지 생성 되니까요) 문제는 외부 comm.jar 파일을 불러오는게 문제인듯합니다.
여담으로 제가 테스트 해본 바로는 netbeans 는 comm.jar 파일을 따로 설치하지 않아도 (lib와 bin 폴더에 파일을 넣지 않아도) 에디터 환경에서 라이브러리에 comm.jar 를 추가해 주면 컴파일 하는데는 문제가 없더군요 (신기~) 하지만 run 하면 comm.jar 이 올라오지 않습니다.(좋다 말았죠...)
물론 직접 comm.jar 를 설치( 폴더에 넣어주고 윈도우 환경변수 맞추기)도 해보았지요
jdk1.5 폴더의 bin 과 lib 파일에 설치 했을때는 컴파일은 되는데 run 이 안되더군요
다시 jdk1.5\jre의 bin 과 lib 에 파일을 설치하면 run 이 됩니다.
만일 netbeans 가 아닌 외부에서 jar 파일을 실행시키려면 jdk1.5\jre 폴더가 아니라 jre1.5 가 설치된 폴더에 comm.jar를 설치해 주어야 하더군요 ( 난감~)
문제는 사용자에게 배포할때는 이렇게 jar폴더를 찾아가서 설치해라 라고 할수가 없잖아요
물론 jar파일이 있는 폴더에 comm.jar 파일을 넣고 classpath도 해주었습니다. 제가 볼때, 여러 욉사이트를 뒤져 봤을때
잘못된게 없는것 같이 보입니다.
그런데 왜 안될까요 이것때문에 하도 머리를 쥐어짜서 머리카락이 얼마 안남았습니다.
부디 다 없어지기 전에 고수님들의 비전을 전수에 주시길.....
부탁트립니다.
-
공주
답변 주셔서 감사합니다. 바로 실행해 봤죠... 그런데 역시 결과는 달라지지 않는군요
저 bat 파일은 콘솔 에서 실행한것과 같은 결과를 주더군요...몰랐습니다. 감사합니다.
참고로 콘솔이나 넷빈즈를 사용해서 컴파일 하거나 run 할때도 에러 메서지가 하나도 뜨지 않습니다.
그냥 정상적으로 실행이 되죠 시리얼 포트 정보만 안올라 오고....
에러 메세지라도 나오면 어디를 긁어야 할지 알겠는데요... 정말 난감합니다. -
적송
classpath 경로에 jar파일을 추가해주세요. 아니면 실행 bat파일을 따로 만들어서 실행시켜주세요.
보통은 그런방식으로 jar파일을 참고합니다.
bat파일의 예
\ java -classpath comm.jar;더추가할.jar 실행클래스명 \