development

Izpack이 '파일 확장자“.js”에 대한 스크립트 엔진이 없습니다.

big-blog 2020. 12. 9. 21:10
반응형

Izpack이 '파일 확장자“.js”에 대한 스크립트 엔진이 없습니다.


Izpack 5 Beta 11을 사용하는 테스트 컴퓨터에서 번들 64 비트 Java를 실행하는 64 비트 winrun4j exe를 사용하여 install.jar을 시작하면 Izpack이 불평합니다.

There is no script engine for file extension ".js", 그런 다음 불평 The installer could not launch with administrator permissions을 한 다음 관리자 권한이 없기 때문에 기본 설치 디렉토리에 설치하려는 시도가 실패하고 C : / Program Files 외부의 다른 폴더에 대한 설치가 정상적으로 완료됩니다.

32 비트 java를 실행하는 32 비트 winrun4j 설치 프로그램으로 실행하면 정상적으로 작동합니다.

exe 래퍼없이 install.jar을 직접 실행하면

즉, java -jar install.jar

32 비트 JVM과 64 비트 JVM을 모두 사용하여 이러한 오류를 제공합니다.

현재 내 유일한 솔루션은 32 비트 exe 래퍼로 설치하는 것이지만 64 비트 래퍼도 필요합니다.

그래서 질문은

  1. 32 비트 exe가 작동하고 64 비트 exe가 작동하지 않는 이유
  2. 래퍼없이 설치하려고하면 32 비트 또는 64 비트가 아닌 이유는 무엇입니까?

후속 조치

나는 발견 이 스레드 자바 스크립트 오류 (하지만 Izpack)에 대한과의 .js 파일이 Utlradedit, 나는 대부분의 파일 형식을 편집에 사용하는 에디터과 관련이 있음을 발견했다.

.js를 Ultraedit와 연결 해제하기 만하면 이제 실행할 때

  • 32 비트 install.jar에서 32 비트 java를 사용하는 java -jar install.jar
  • java -jar install.jar 64 비트에서 64 비트 java를 사용하는 install.jar
  • 32 비트 winrun4j 래퍼.

이제 작동합니다 :)

하지만 64 비트 winrun4j는 이제 설치를 시작하지 못하고 전혀 작동하지 않습니다. 명령 창에서 실행하면 대신 확인할 수 있습니다.

달리기

wscript C:\Users\MESH\AppData\Local\Temp\Installer.js 
 c:\Code\WidgetReleases\1.0_Beta_2\widget-windows64\JVM64\bin\javaw.exe 
 -Dizpack.mode=privileged -jar 
C:\Code\WidgetReleases\1.0_Beta_2\widget-windows64\install.jar

그들은 달렸다

wscript C:\Users\MESH\AppData\Local\Temp\Installer.js 
 c:\Code\WidgetReleases\1.0_Beta_2\widget-windows64\JVM64\bin\javaw.exe 
 abort exit 
 -Dizpack.mode=privileged -jar 
 :\Code\WidgetReleases\1.0_Beta_2\widget-windows64\install.jar

따라서 후속 질문은 다음과 같습니다.

  1. 단순히 파일 유형을 편집기와 연결하면이 자바 스크립트가 깨지는 이유는 무엇입니까?이 문제 또는 유사한 문제가 많은 사용자에게 영향을 미칠 수 있다고 생각합니다.
  2. 64 비트 래퍼에서 실행하면 installer.js가 Abort Exit를 실행하는 이유는 무엇입니까?

여기에 네 가지 질문이 있습니다.

  1. 32 비트 exe가 작동하고 64 비트 exe가 작동하지 않는 이유
  2. 래퍼없이 설치하려고하면 32 비트 또는 64 비트가 아닌 이유는 무엇입니까?
  3. 단순히 파일 유형을 편집기와 연결하면이 자바 스크립트가 깨지는 이유는 무엇입니까?이 문제 또는 유사한 문제가 많은 사용자에게 영향을 미칠 수 있다고 생각합니다.
  4. 64 비트 래퍼에서 실행하면 installer.js가 Abort Exit를 실행하는 이유는 무엇입니까?

나는 그들에게 대답하려고 시도 할 것입니다.

  1. 32 비트와 64 비트를 모두 '원활하게'처리해야하는 프로그램의 오류와 버그가 가끔 발생합니다. 한 가지 예는 시만텍의 SEP 정의 복구 프로그램입니다. 가끔 작동하지만 전부는 아닙니다. 귀하의 의견은 이러한 버그를 확인하고 32/64 처리에서 오류가 발생하지 않는 경쟁 프로그램도 식별했습니다. "이 문제는 해결되지 않았지만 winrun4j 대신 launch4j사용하여 설치 프로그램을 실행하여 해결했습니다 ." 축하합니다! :)

  2. 필수 앱 / 래퍼가 시스템의 PATH에없는 것 같습니다. 경로의 두 폴더는 C : \ WINDOWS 및 C : \ WINDOWS \ SYSTEM32입니다. 명령 프롬프트에서 단어를 입력합니다 SET(대문자는 필요하지 않음). 알파벳순으로 정렬 된 변수 목록이 나타납니다. PATH =라고 표시된 폴더에서 앱을 시작할 것으로 예상되는 래퍼의 전체 폴더 경로를 찾습니다. 거기에 없을 것 같습니다. 원하는 경우 추가 할 수 있습니다.

  3. 좋은 질문이지만 그럴만 한 이유가 있습니다. 파일 형식을 프로그램과 연결하면 컴퓨터가 파일 편집기를 사용하여이 경우 .js로 끝나는 파일을 항상 열도록 지시하는 것입니다. 그것은 당신이 의도 한 것이 아니라 당신이 말한 것을하고 있습니다 . 의도 한 내용을 얻는 일반적인 방법 은 이전에 사용했던 프로그램과 파일을 다시 연결하고 (어떤 것이 가장 좋은지 알 수 있음) 파일 편집 하려면 좋아하는 JS 편집기를 "연결 프로그램"에 추가하는 것입니다. . "옵션을 선택합니다. 원하는 경우이를 수행하는 방법에 대한 한두 페이지를 찾아 링크 할 수 있습니다.

  4. 나는 이것이 질문과 대답 # 1과 밀접하게 관련되어 있다고 생각합니다.

이것이 도움이되는지 알려주세요.


.js 파일에 대한 기본 동작을 변경하면 .exe 파일에 대한 기본 동작을 변경하면 문제가 발생하는 것과 같은 이유로 문제가 발생합니다. 프로그램은 다른 프로그램에 대한 기본 동작이 해당 프로그램을 실행할 것으로 예상합니다. 편집은 항상 기본값이 아닌 오른쪽 클릭 동작이어야합니다.

참고 URL : https://stackoverflow.com/questions/12710551/izpack-fails-with-there-is-no-script-engine-for-file-extension-js

반응형