답변:
항상 jar 파일을 실행하여 실행할 수 있습니다 java -jar JMerise.jar
.
그러나 jar 파일 자체를 실행 가능하게하려면 메시지 힌트로 실행 가능 비트를 설정해야합니다. chmod +x /home/aimad/Programms/jMerise/JMerise.jar
이것을 달성 할 것입니다.
그 후에는 ./JMerise.jar
실행할 수 있습니다.
man chmod
chmod 작동 방식에 대한 정보를 제공합니다.
파일을 마우스 오른쪽 버튼으로 클릭하고 속성을 클릭 한 다음 권한 탭으로 이동하여 "이 파일을 프로그램으로 실행 허용"이라는 상자를 선택하십시오.
먼저 시스템에 적합한 Java 런타임 환경이 있는지 확인해야합니다. 우분투는 공식 Java 저장소에서 openjdk를 사용하여 Oracle Java와 99.99 %의 전투력을 발휘합니다.
sudo apt-get install openjdk-7-jre
다음으로 호출 java-jar-launcher.desktop
된 파일을 작성 ~/.local/share/applications
하고 다음 내용을 넣으십시오.
[Desktop Entry]
Type=Application
Name=Java Application Launcher
Icon=java
Exec=/usr/bin/java -jar %U
Categories=Application;Java
Terminal=False
다음에 다음 줄을 추가하십시오 ~/.local/share/applications/mimeapps.list
.
application/x-java-archive=java-jar-launcher.desktop;
이제 jar 파일을 두 번 클릭하여 시작하면 아무 일도 일어나지 않으면 jar 파일을 마우스 오른쪽 버튼으로 클릭하고 속성을 선택한 다음 "연결 프로그램"탭으로 이동하면 "Java Application Launcher"가 표시됩니다. .
이 방법은 잠재적으로 위험 할 수있는 jar 파일에 대한 실행 권한을 제공하지 않기 때문에이 방법이 좋습니다 (IMHO). 이 방법은 그래픽 환경에서만 작동하며 사용자가 파일을 수동으로 두 번 클릭해야합니다.
jar 애플리케이션을 실행하면 java -jar application.jar
java가 경로에 있음을 의미합니다. 간단한 두 가지가 필요합니다. 1) #!java -jar
jar 파일의 첫 줄에 쉘 스크립트를 사용 하는 것처럼 인터프리터 (겉보기는 )를 추가 하십시오.
echo '#!java -jar' > app.jar
cat application.jar >> app.jar
mv app.jar application.jar
jar 파일의 내용을 정리하면 다음과 같이 시작하는 것을 볼 수 있습니다. #!java -jar
PK
^lN BOOT-INF/PK
.....
.....
2)에 의해 실행 속성을 추가하십시오 .
chmod +x application.jar
이제를 통해 "자체 실행"할 수 ./application.jar
있습니다.
명령 행에서 .jar 파일을 실행해도 작동 java -jar myFile.jar
하지만 ( ) GUI에서 파일을 두 번 클릭해도 작동하지 않으며 sudo chmod +x myFile.jar
성공한 것처럼 보이지만 여전히 두 번 클릭하여 열 수없고 .jar을 마우스 오른쪽 단추로 클릭하면 파일> 속성> 권한> "프로그램으로 파일 실행 허용"이 작동하지 않는 경우 (즉, 클릭하면 바로 확인란이 다시 전환됨) .jar 파일이 NTFS 파일 시스템에있을 수 있으며이 파일에 대한 실행 권한은 허용되지 않습니다. 파일 단위. (예를 들어 듀얼 부팅을하고 우분투와 Windows간에 NTFS 파티션을 공유하는 경우이 문제가 발생할 수 있습니다).
@ tusharkant15가 설명하는 것처럼 실행기를 만드는 것은 /usr/bin/java
.jar 파일 자체가 아니라 실행중인 장면 뒤에서 작동하기 때문에 작동 합니다. NTFS가 아닌 다른 파일 시스템으로 .jar 파일을 이동해도 작동합니다.