Windows에서 JAR 파일 실행
Hellowolld.jar라는 JAR 파일이 있어요이 명령을 실행하려면 명령줄 창에서 다음 명령을 실행합니다.
java -jar helloworld.jar
이것은 정상적으로 동작합니다만, 더블 클릭으로 실행하는 방법은 무엇입니까?소프트웨어를 설치해야 합니까?
가장 쉬운 경로는 Java Runtime Environment(JRE; Java 런타임 환경)를 업그레이드 또는 재설치하는 것입니다.
또는 다음과 같습니다.
- Windows 탐색기를 열고 도구에서 폴더 옵션을 선택합니다..'
- 파일 유형 탭을 클릭하고 아래로 스크롤하여 JAR 파일 유형을 선택합니다.
- [상세설정] 버튼을 누릅니다.
- 파일 형식 편집 대화상자에서 작업 상자에서 열기를 선택하고 편집...을 클릭합니다.
- Browse 버튼을 눌러 Java 인터프리터 javaw.exe 위치로 이동합니다.
- [에 사용된 에 [액션 수행에 사용된 응용 프로그램]과 .
C:\Program Files\Java\j2re1.4.2_04\bin\javaw.exe" -jar "%1" %
(주의: 'javaw'로 시작하는 부분은 정확히 이와 같아야 합니다. 경로 이름의 다른 부분은 사용하는 Java 버전에 따라 다를 수 있습니다.) 그런 다음 모든 대화 상자가 닫힐 때까지 OK 버튼을 누릅니다.
여기서 도난당한 것은 http://windowstipoftheday.blogspot.com/2005/10/setting-jar-file-association.html 입니다.
Windows Vista 또는 Windows 7에서는 수동 파일 연결 편집기가 제거되었습니다.
가장 쉬운 방법은 작지만 강력한 프리웨어 도구인 Jarfix를 실행하는 것입니다.실행하기만 하면 Java 앱이 다시...더블클릭이 가능합니다.
.jar 파일을 배포하여 다른 사용자의 Windows 컴퓨터에서 실행할 수 있도록 해야 하는 경우 명령 프롬프트에서 다음과 같은 간단한 .bat 파일을 만들 수 있습니다.
java -jar MyJavaTool.jar
.jar 파일과 같은 디렉토리에 .bat 파일을 저장합니다.
Example.jar라는 이름의 jar 파일이 있는 경우 다음 규칙을 따르십시오.
- 엽니다.
notepad.exe
- 입::
java -jar Example.jar
- 「」로합니다.
.bat
- 을, 「복사」가 에 카피합니다.
.jar
- , ★★★★★★★★★★★★★★★★★★★★★★★★★★,
.jar
이로 인해 명령 프롬프트에서 실행 가능한 jar 파일을 시작할 때 문제가 발생합니다.
(명령 프롬프트에서) 시도할 경우:
jarfile.jar parameter
이것은 다음과 같이 번역되고 있기 때문에 기뻐할 수 없습니다(동작하지 않습니다.
javaw.exe -jar jarfile.jar parameter
단, 다음 명령어는 기능합니다.
java.exe -jar jarfile.jar parameter
위에서 설명한 대로 파일 관리자에서 연결을 변경하면 다음과 같이 변경됩니다.
"C:\Program Files\Java\j2re1.4.2_04\bin\java.exe" -jar "%1" %*
다음으로 다음과 같이 입력합니다.
jarfile.jar parameter
명령 프롬프트에 표시되며 이제 작동합니다.
편집: (단, 콘솔이 아닌 폼 기반의 Java 앱을 실행하면 검은 콘솔 창이 뜨기 때문에 이는 이상적인 솔루션이 아닙니다.
이러한 jar 파일을 윈도우에서 더블클릭하여 실행하면 파라미터가 전달되지 않으므로 Java 코드는 스택 오버플로우 예외를 처리하고 마지막에 "key를 누르는" 기능을 포함해야 합니다.그렇지 않으면 창이 사라집니다.
창에서 매개 변수를 전달하려면 jar 파일에 대한 바로 가기를 만들어야 합니다. jar 파일에는 대상 줄에 매개 변수가 포함되어 있습니다(바로 가기를 마우스 오른쪽 버튼으로 클릭하고 속성을 선택). 이 방법으로는 매개 변수를 jar 파일 아이콘 자체에 추가할 수 없습니다.
여기에는 하나의 일관된 솔루션이 없지만 다른 콘솔 애플리케이션에서도 동일한 문제가 발생할 수 있습니다.
"bat to exe"라는 Windows 프리웨어 응용 프로그램이 있습니다.이 응용 프로그램을 사용하여 적절한 명령줄이 포함된 .bat 파일에서 exe 파일을 만들 수 있습니다.이 어플리케이션에서 jar 파일을 exe에 삽입하여 실행이 끝나면 정리할 수도 있습니다.이것이 보다 우아한 솔루션일지도 모릅니다.
cmd(명령 프롬프트)의 첫 번째 경로 설정:
set path="C:\Program Files\Java\jre6\bin"
그런 다음 입력합니다.
java -jar yourProgramname.jar
Windows XP에서는 2개의 셸 명령어만 필요합니다.
C:\>ftype myjarfile="C:\JRE1.6\bin\javaw.exe" -jar "%1" %*
C:\>assoc .jar=myjarfile
을 올바른 경로로 합니다.myjarfile
.
현재 설정을 확인하려면:
C:\>assoc .jar
C:\>ftype jarfile
에는 첫 있는 값을 합니다.jarfile
.
* Windows 7에서 테스트되지 않음
사용자가 PC에서 변경할 필요가 없는 방법이 있습니다.Runtime.getRuntime.exec()을 사용하면 cmd.exe를 시작하고 명령어를 실행할 수 있습니다.따라서 사용자가 .jar 파일을 클릭하면 Java 프로그램이 명령 프롬프트에서 실행될 수 있습니다.
public static void main(String[] args) throws IOException {
if(args.length == 0) {
Process p = Runtime.getRuntime().exec("cmd.exe /c start java -jar " + (new File(NameOfClass.class.getProtectionDomain().getCodeSource().getLocation().getPath())).getAbsolutePath() + " cmd");
} else {
//code to be executed
}
}
regedit을 .HKEY_CLASSES_ROOT\Applications\java.exe\shell\open\command
을 더블 로 지정합니다.java.exe
path"를 합니다.%1
요
다른 모든 제안 외에도 고려해야 할 것이 하나 더 있습니다.hellowolld.jar는 콘솔 프로그램입니까?그렇다면 두 번 클릭할 수 있는 항아리 파일로 만들 수 없을 거예요콘솔 프로그램은 일반 cmd.exe 셸 창을 사용하여 입력 및 출력을 수행합니다.보통 항아리 "launcher"는 javaw와 결합됩니다.명령 셸 창을 생성하지 않는 exexe 。
Windows 7 x 64 를 실행하고 있습니다만, 이러한 수정은 사용할 수 없었습니다.
결국 이건 나한테 효과가 있었어.
http://thepanz.netsons.org/post/windows7-jar-file-association-broken-with-nokia-ovi
실행할 .bat 파일이 포함된 아카이브가 있지만 실제 javaw.exe 경로를 확인하십시오!!!
몇 가지 사항을 확인해야 합니다. 사용자 자신의 jar 파일인 경우 매니페스트에 Main 클래스를 정의했는지 확인하십시오.명령줄에서 실행할 수 있다는 것을 알고 있기 때문에 다른 방법은 Windows 바로 가기를 만들고 속성을 수정하는 것입니다(Windows 머신이 없습니다).이것에 의해, 오픈시에 실행되는 커맨드가 java - jar 커맨드가 됩니다.
또 하나는, 뭔가 혼란스럽지 않다면, 어쨌든 동작할 것입니다.확장자 .jar에 Java가 관련되어 있는지 확인합니다.
유감스럽게도 Microsoft가 최신 Windows 에디션에서 고급 파일 연결 대화 상자를 삭제했기 때문에 쉽지 않습니다.- 새로운 Windows 버전에서는 .jar 파일을 여는 데 사용할 응용 프로그램만 지정할 수 있습니다.
윈도우즈에서 .jar 파일을 열려면 두 가지 단계를 수행해야 합니다.
[컨트롤 패널]를 열고 [기본 프로그램]- [어소시에이션 설정]를 선택합니다.여기서 .jar 확장자(Executable JAR 파일)를 찾아 기본 프로그램으로 Java를 선택하여 이 확장자를 엽니다.아마 "Java Platform(SE)"로 표시될 것입니다.더 빠른 방법은 .jar 파일을 마우스 오른쪽 버튼으로 클릭한 다음 "변경"을 클릭하여 관련 프로그램을 변경하는 것입니다." 버튼을 클릭합니다.
regedit을 .
HKEY_CLASSES_ROOT\jarfile\shell\open\command
도, 에 할 수 있습니다. 「 」, 「 」, 「 」(Default)
Windows 시스템에서는 다음과 같습니다.C:\app\32\jre7\bin\javaw.exe" -jar "%1" %*
의 경우,과 같은 입니다: ㄴ, ㄴ, ㄴ, ㄴ, ㄴ, ㄴ, ㄴ, ㄴ, ㄴ, ㄴ, ㄴ, ㄴ, ㄴ.C:\Program Files\Java\jre7\bin\javaw.exe" -jar "%1" %*
주의:
- 「 」를하지 주세요.
java.exe
셸 창을 열 수 있습니다. - 이 스레드에 기재되어 있는 jarfix 툴은 레지스트리를 변경하는 것 이외에는 아무것도 할 수 없습니다.저는 수동 레지스트리 변경 방법을 선호합니다.이는 시스템 관리자가 레지스트리 변경을 네트워크 내의 모든 워크스테이션에 "푸시"할 수 있음을 의미하기 때문입니다.
.bat
삭제:
start javaw -jar %*
하여 app default를 엽니다..jar
이와 함께..bat
filename을 클릭합니다.
cmd
할 때.jar
filename을 클릭합니다.
Windows 10에서도 같은 문제가 발생했습니다."hellowolld.jar"를 클릭하여 수정한 후 속성으로 이동하여 "Opens with:" 아래의 변경 버튼을 클릭한 후 "이 PC에서 다른 앱을 찾습니다"를 선택합니다."Open with..."에서" 대화 상자에서 PC의 Java 폴더 위치로 이동하여 대응하는 jdk 폴더를 열고 bin 폴더를 열고 "javaw.exe"를 선택합니다.다음 번에는 "hellowolld.jar"가 정상적으로 열립니다.
일반적인 Java 위치 예: "C:\Program Files (x86)\Java\jdk1.8.0_111\bin"
클릭/더블 클릭으로 jar 파일을 실행하는 또 다른 방법은 파일 이름에 "-jar "를 추가하는 것입니다.예를 들어 파일 이름을 로 변경합니다.
요..class
" "와 관련된 java.exe
이것은 모든 경우에 효과가 있는 것은 아니지만, 대부분의 경우 효과가 있었습니다.
프리스크립트:프롬프트가 표시되었다가 바로 사라지면 프로그램이 실행되어 자동으로 종료되기 때문입니다.스캐너를 마지막에 삽입하여 종료하면 종료하기 전에 프롬프트가 입력 대기 상태가 됩니다.(혹은 지연을 사용할 수도 있습니다)
cmd에서 .jar를 실행해도 정상적으로 동작하지만 더블클릭을 해도 아무런 효과가 없는 것과 같은 상황이었다.
솔루션:텍스트 에디터를 열고 명령줄을 작성합니다.java - jar Example . jar 파일을 .bat 파일로 저장합니다.이 bat 파일을 실행하여 필요한 출력을 가져옵니다.
한 걸음 더 나아가 Bat To Exec Converter와 같은 간단한 GUI 도구를 사용하여 이 bat 파일을 exe 파일로 변환할 수 있습니다.
이제 .jar를 배포판으로서 .exe 파일로 공유할 수 있습니다.모든 파일을 함께 보관해 주세요.(특히 .jar와 .bat 파일의 원인은 cmd 프롬프트에 불과합니다.) (논리적인 느낌)
나는 개발과 많은 것을 배우는 것에 꽤 익숙하지 않다.잘못을 저질렀다면 용서해 주세요.제안해주시면 감사하겠습니다.
10에서도가 발생.
결결: :
- JAVA_ " 및 HOME - JAVA_PATH
https://javatutorial.net/set-java-home-windows-10httpsjavatutorial.net/ - Jarfix를 사용하여 다음 서버 간의 어소시에이션을 복원합니다.
.jar
그리고.javaw.exe
https://johann.loefflmann.net/en/software/jarfix/index.html
Java 파일을 만드는 데 이클립스를 사용하는 경우 실행 가능한 jar 파일로 내보내도록 선택할 수 있습니다.프로그램을 사용하여 이 작업을 수행했습니다. 이 항아리를 클릭하면 그대로 실행됩니다.이 조작은, os x 와 같이 양쪽의 윈도우로 동작합니다.
스타트 배트를 만드는 것만이 나한테 효과가 있었어
텍스트 문서를 열고 .java -jar 라고 하는 이름을 입력합니다.
실행하려는 .jar 파일과 동일한 폴더에 start.bat으로 저장합니다.배트를 튕겨요
jar 파일을 더블 클릭하여 실행해야 하는 경우 "Runnable JAR"로 생성해야 합니다. IDE로 간단하게 실행할 수 있습니다.
이클립스를 사용하고 있는 경우는, 다음의 순서에 따라 주세요.
To create a new runnable JAR file in the workbench:
1.From the menu bar's File menu, select Export.
2.Expand the Java node and select Runnable JAR file. Click Next.
3.In the Opens the Runnable JAR export wizard Runnable JAR File Specification page, select a 'Java Application' launch configuration to use to create a runnable JAR.
4.In the Export destination field, either type or click Browse to select a location for the JAR file.
5.Select an appropriate library handling strategy.
Optionally, you can also create an ANT script to quickly regenerate a previously created runnable JAR file.
자세한 내용은 Eclipse 도움말 페이지 링크에서 확인할 수 있습니다.
.jar 파일을 Windows에서 실행하는 방법은 여러 가지가 있습니다.그 중 하나는 명령어프롬프트를 사용하고 있습니다.
순서:
- 명령 프롬프트 열기(관리자로서 실행)
- 이제 루트 디렉터리에 "cd" 명령을 씁니다.
- "java jar filename.jar" 라고 입력합니다.주의: WinRAR, jarfix 등의 서드파티 어플리케이션도 사용할 수 있습니다.
순서:
1) Google에서 Java SE Runtime Environment를 검색합니다.https://www.google.com/search?q=Java+SE+Runtime+Environment
2) 컴퓨터에 적절한 버전을 설치합니다.
컴파일용:
javac -cp ".;./mysql-connector-java-5.0.8.jar;mybatis-3.0.1.jar;ibatis-2.3.0.677.jar" MainStart.java
실행 시:
java -cp ".;./mysql-connector-java-5.0.8.jar;mybatis-3.0.1.jar;ibatis-2.3.0.677.jar" MainStart
사실 나도 이 문제에 직면했고, 내 jar 파일용 .bat runner를 만들어서 이 문제를 해결했다.
코드는 다음과 같습니다.
class FileHandler{
public static File create_CMD_Rnner(){
int exitCode = -1625348952;
try{
File runner = new File(Main.batName);
PrintWriter printer = new PrintWriter(runner);
printer.println("@echo off");
printer.println("title " + Main.applicationTitle);
printer.println("java -jar " + Main.jarName + " " + Main.startCode );
printer.println("PAUSE");
printer.flush();
printer.close();
return runner;
}catch(Exception e){
System.err.println("Coudln't create a runner bat \n exit code: " + exitCode);
System.exit(exitCode);
return null;
}
}
}
그런 다음 기본 응용 프로그램 클래스에서 다음을 수행합니다.
public class Main{
static String jarName = "application.jar";
static String applicationTitle = "java Application";
static String startCode = "javaIsTheBest";
static String batName = "_.bat";
public static void main(String args[]) throws Exception{
if(args.length == 0 || !args[0].equals(startCode)) {
Desktop.getDesktop().open(FilesHandler.create_CMD_Rnner());
System.exit(0);
}else{
//just in case you wanted to hide the bat
deleteRunner();
// Congratulations now you are running in a cmd window ... do whatever you want
//......
System.out.println("i Am Running in CMD");
//......
Thread.sleep(84600);
}
}
public static void deleteRunner(){
File batRunner = new File(batName);
if(batRunner.exists()) batRunner.delete();
}
}
주의해 주십시오.
이 코드(내 코드)는 클래스 파일이 아닌 jar 파일에서만 작동합니다.
jar 파일의 이름은 문자열 "jarName"이 기본 클래스인 것과 같아야 합니다.
사용하다
.bat
파일:
명령어를 .bat 파일에 입력합니다.여기서, 당신의 명령은java -jar path\yourJarName.jar
.Something like: java -jar C:\workspace\myApplication.jar
저장하고 bat 파일을 두 번 클릭하여 항아리를 실행합니다.
언급URL : https://stackoverflow.com/questions/394616/running-jar-file-on-windows
'programing' 카테고리의 다른 글
준비된 문장에서 "좋아요" 와일드카드 사용 (0) | 2022.06.26 |
---|---|
Vue 2에 css 파일을 포함하는 방법 (0) | 2022.06.26 |
Vuex의 작업 방법 지연 시뮬레이션 (0) | 2022.06.26 |
WebStorm에서 Bootstrap-Vue.js 지원에 대한 알 수 없는 html 태그 경고 (0) | 2022.06.26 |
모든 요청에 대해 서버에서 Vue + Axios 처리 오류 발생 (0) | 2022.06.26 |