배포.속성 파일의 시스템 전체 JRE 설정이 무시됩니까?

배포.속성 파일의 시스템 전체 JRE 설정이 무시됩니까?

기본적으로 나는이 질문. 그러나 제안된 솔루션은 Win2003 서버나 테스트에 사용되는 Win7 랩톱에서는 작동하지 않습니다.

ActiveX-bridge dll을 통해 .Net 프로그램으로 시작되는 Java SE 6 프로그램이 있습니다. 테스트를 위해 3개의 JRE가 설치된 Win7 컴퓨터를 사용했습니다. jdk1.7.0_55, jre1.6.0_45 및 jre1.6.0_38-x64. 애플리케이션은 항상 jre1.6.0_45를 사용하고 최대 95040KB의 메모리로 시작하지만 약간 더 많은 메모리가 필요합니다.

메모리를 늘리는 방법은 파일을 편집 <userprofile>\AppData\LocalLow\Sun\Java\Deployment\deployment.properties하고 다음 줄을 추가하는 것입니다.

deployment.javaws.jre.1.args=-Xmx100m

하지만 문제는 이것이 한 명의 사용자에게만 작동하고 서버의 모든 사용자에게 작동하기를 원한다는 것입니다.

에서 논의한 바와 같이이 답변C:\Windows\Sun\Java\Deployment\deployment.config내용이 포함된 파일을 만들었습니다.

deployment.system.config=file\:C\:/Windows/Sun/Java/Deployment/deployment.properties

그런 다음 내 사용자 프로필의 배포.속성 파일을 폴더에 복사 하고 복사된 파일에 해당 줄을 C:\Windows\Sun\Java\Deployment\다시 추가했습니다 . deployment.javaws.jre.1.args=-Xmx100m그러나 이상하게도 이것은 작동하지 않습니다.

지금까지 시도한 것:

  • 사용된 JRE(D:\Java\jre1.6.0_45\lib) 및 최신 JRE(D:\Java\jdk1.7.0_55\jre\)의 lib 폴더에 배포.config 및 배포.properties 파일 배치 라이브러리)

  • JRE가 하나만 설치된(v1.6.0_11) (가상) Win2003 서버의 C:\Windows\Sun\Java\Deployment 폴더에 파일 배치

  • 행을 추가 deployment.javaws.jre.0.args=-Xmx100하면 deployment.javaws.jre.2.args=-Xmx100설치된 모든 JRE가 동일한 설정을 사용하게 됩니다.

  • 배포.config 파일에 두 번째 줄을 추가 deployment.system.config.mandatory=true하고 배포.properties 파일의 경로를 존재하지 않는 경로로 변경했습니다. -> 아무 일도 일어나지 않았고 응용 프로그램이 제대로 시작되었으므로 배포.config 파일이 완전히 무시되는 것 같습니다. JRE.

내가 어디로 잘못 가고 있는지 아는 사람이 있습니까?

답변1

  1. file\:C\:/Windows/Sun/Java/Deployment/deployment.properties그게 유효한지 확실하지 않습니다Windows 파일 URI.오라클 문서약간 다르고 더 그럴듯한 것을 나열합니다.file:///C:/Windows/Sun/Java/Deployment/deployment.properties

  2. deployment.system.config.mandatory설정 을 시도 True하고 앱이 시작되지 않는지 확인하세요. 실패하면 JAVA가 deployment.configURI로 액세스할 수 없으며 수정이 필요하다는 의미입니다.

    배포.system.config.mandatory 속성은 부울입니다.true로 설정된 경우, development.system.config 특성이 가리키는 배포.properties 파일을 찾아서 성공적으로 로드해야 하며, 그렇지 않으면 아무것도 실행할 수 없습니다.속성이 false로 설정된 경우 배포를 찾아 로드하려고 시도합니다. 배포.system.config 속성이 가리키는 속성 파일입니다. 성공하면 파일이 사용되며, 그렇지 않으면 파일이 무시됩니다. 배포.system.config.mandatory 속성의 기본값은 false입니다.

  3. 이 게시물다음을 삭제해 볼 수 있다고 제안합니다.

    • 파일:%localappdata%\Sun\Java\Deployment\deployment.properties

    • 레지스트리 키:HKEY_CURRENT_USER\Software\AppDataLow\Software\JavaSoft\DeploymentProperties

  4. 이 게시물에 설명된 JAVA 7 관련 문제가 있습니다.SCCM/MDT를 사용한 Java 1.7 자동 업데이트 배포

더 많은 생각:

이 JRE 시스템 전체 구성이 어떤 Java 버전에서도 작동하지 않는다고 생각하기 시작했습니다. 그게 아니면 내가 뭔가를 완전히 놓치고 있어요

글쎄, 나는 그것이 확실히 작동하지 않는다는 것을 발견했습니다1.6.0_03 및 1.6.0_07:

큐:Java 플러그인 관련 배포 속성은 시스템 수준 배포 속성 파일에서 무시됩니다. 이 문제는 1.6.0_03 및 1.6.0_07에서 엄격하게 재현 가능합니다.

ㅏ: 6u14 b01로 테스트되었습니다. 시스템 수준 배포 구성이 새로운 Java 플러그인에서 작동 중입니다. 우리는 이전 플러그인에 대해 이 문제를 수정하지 않을 것입니다. 새 플러그인에서 재현할 수 없으므로 CR을 종료합니다.

시스템 수준 배포 구성은 Java webstart의 기능입니다. Java 플러그인에서는 사용되지 않았습니다.

6u10부터 새로운 Java 플러그인과 Java Webstart 모두에 동일한 jre 선택 메커니즘이 사용됩니다. 이를 통해 새 플러그인이 시스템 수준 구성을 조정할 수 있습니다. 이 CR을 RFE로 표시하고 우선순위를 보통으로 낮춥니다.

그리고 일종의 해결 방법이 있습니다.

다음은 문제에 대한 해결 방법이 될 수 있습니다. "Windows PC에서 전역적으로 속성(예: Xmx)을 구성하는 방법은 무엇입니까?"

그러나 이는 Java 플러그인 또는 Java Web Start와 같은 특정 구성 요소에만 국한되지 않습니다.

Windows 제어판 열기: 고급 → 환경 변수 → 시스템 변수 → 새 변수
변수 이름:_JAVA_OPTIONS
변수 값:-Xmx256m #(예)
확인을 눌러 모든 창을 닫습니다.

"Internet Explorer"를 다시 시작하면 구성이 활성화됩니다. 구성은 모든 Java 프로그램("java.exe" 실행 프로그램, Java Web Start "javaws.exe" 및 브라우저에서 실행되는 Java 플러그인)에 영향을 미칩니다.

관련 정보