jar 파일에없는 응용 프로그램에 필요한 다른 파일을 어떻게 배포합니까? 예를 들어, 신청서는 http://www.javabeginner.com/java-swing/java-swing-shuffle-game입니다. 다운로드에는 Shuffle.jar, Shuffle.bat, Score.dat 및 3 개의 이미지가있는 images 폴더가 있습니다. 이미지를 Shuffle.jar에 직접 넣을 수도 있지만 jar 파일에 Score.dat를 넣고 싶지는 않습니다. jnlp에서이 유형의 파일을 식별 할 수있는 곳이 있습니까?Java Web Start를 사용하는 비 클래스 파일
답변
자바가 아닌 파일은 리소스로 저장해야합니다. 변경되는 파일의 경우, 원본 또는 템플리트 파일을 항아리의 자원으로도 저장합니다. 프로그램이 시작되면 로컬 시스템에서 해당 파일이 있는지 확인해야합니다. 그렇지 않은 경우 JAR 자원에서 템플리트 파일을 복사하여 로컬 파일을 작성합니다. 파일이 이미 존재하면 그대로 사용됩니다.
파일을 로컬 시스템에 저장하려면 샌드 박스 (부호 없음)에서 실행하는 경우에도 PersistenceService
(javadoc/example)을 사용할 수 있습니다. Java 응용 프로그램에 서명 된 경우 일반 File API를 사용하여 사용자의 홈 폴더 아래에있는 ".yourgame"하위 폴더와 같이 로컬 컴퓨터에 파일을 쓸 수 있습니다.
jar 파일에 모든 파일 (점수 파일 제외)을 넣고 리소스로드를 사용하여 내용을로드 할 수 있습니다.
방금 회신을 삭제하고 두 번 다시 시작하여 매 회 내 대답을 변경했습니다. 이것은 혼란스럽고 좀 더 명확한 설명이 필요합니다.
응용 프로그램이 Web Start 응용 프로그램으로되어 있다고 확신합니까? 연결 한 사이트에서는 그렇지 않습니다. Web Start 응용 프로그램으로 설계되지 않은 응용 프로그램을 웹 시작 응용 프로그램으로 변경하려고합니까?
태그가 의미하는대로 Web Start 앱이 아닌 경우이 질문은 열린 상태입니다. 100 가지 방법으로 배포 할 수 있습니다.
실제로 Web Start 응용 프로그램으로 변환하려는 경우 이미지를 jar 파일로 패키징하여 시작할 수 있습니다. File() 대신이 파일을 읽으면 첫 번째 두통을 완화 할 수 있습니다. Web Start가 될 경우 점수를 유지하는 방법을 결정해야합니다. 당신은 그것에 대해 어떻게 움직일 지 결정하기 전에 채점 시스템이 어떤 것인지 결정해야합니다. 모든 점수는 Web Start 응용 프로그램을 호스팅하는 웹 사이트에 보관됩니까? 그 부분은 여전히 지역일까요? 로컬 파일 시스템에 액세스하려면 jar에 서명해야합니다. 그러면 파일 시스템에 score.dat를 추출하고 최종 사용자가 수락하면 원하는대로 수행하십시오.
당신이 그것을하기 전에 무엇을하고 싶은지 알아야합니다. 또는 우리가 알고있는 것 이상을 이미 알고 있다면 적어도 그것을 지우십시오.
예, 비 JWS 앱을 JWS 앱으로 변환하려고합니다. 응용 프로그램은 셔플 게임이 아니므로, 나는 단지 내가 일하고있는 앱의 몇 가지 문제점을 가지고있는 예제로 이것을 사용하고 있습니다. Google에서 현재 앱과 함께 배포하는 파일 중 하나가 Jazzy 맞춤법 검사기와 함께 사용되는 사전입니다. 그것은 영구하며 사용자의 사용자 정의 사전은 다른 곳에서 끝납니다. jnlp에서 속성을 설정할 수 있다는 것을 알고있는 몇 가지 속성 파일이 있습니다. 그렇다면 Orbix/CORBA에서 사용하는 핵심 파일이 있습니다.이 파일을 제거하고 싶습니다. 아직 사용할 수 없습니다. –