이종간 OS 클래스 문의
안녕하세요. 영한쌤.
개발자 PC 윈도우에서 컴파일한 클래스가 유닉스에서 안돌아가는 경험을 한 적이 있는데 java1.5 PC 윈도우, java1.5 서버 유닉스최근 버전 자바에서는 class파일이 이종간 OS도 지원할까요? 아니면, 제환경이 문제가 있었을까요? 오래된 기억이라 동일한 자바 버전이었는지 기억이 안나네요.
좋은 강의 정말 감사합니다.저도 해봐야겠네요 ^^
답변 1
0
안녕하세요. Gabriel님
자바의 플랫폼 독립성: 자바는 "한 번 작성하면 어디서나 실행된다(Write Once, Run Anywhere)"라는 슬로건으로 유명합니다. 이는 자바 애플리케이션이 자바 가상 머신(JVM) 위에서 실행되므로, JVM이 설치된 모든 운영 체제에서 동일하게 동작할 수 있다는 의미입니다. 따라서, 이론적으로는 윈도우에서 컴파일된 자바 클래스 파일은 유닉스 시스템의 JVM에서도 문제없이 실행될 수 있습니다.
자바 버전의 호환성: Gabriel님이 경험한 문제는 자바의 버전 차이에서 비롯될 수 있습니다. 예를 들어, 자바 1.5에서 컴파일된 클래스 파일은 자바 1.5 또는 그 이후 버전의 JVM에서 실행될 수 있지만, 더 낮은 버전의 JVM에서는 실행되지 않습니다. 또한, 자바의 특정 버전들 사이에서는 호환성 문제가 발생할 수도 있습니다.
환경 설정 문제: 자바 애플리케이션 실행 시 클래스 패스, 라이브러리 의존성, 시스템의 환경 변수 설정 등이 올바르게 설정되어 있지 않으면 문제가 발생할 수 있습니다. 이런 설정들은 운영 체제 간에 차이가 있을 수 있으며, 이로 인해 유닉스 시스템에서 문제가 발생했을 수 있습니다.
최근 버전의 자바: 최근 버전의 자바 (예: 자바 8 이후)는 이전 버전들보다 향상된 호환성과 성능을 제공합니다. 따라서, 최신 버전의 자바를 사용하면 이전에 경험했던 호환성 문제를 해결할 수 있을 가능성이 높습니다.
정리하자면 자바는 원칙적으로 플랫폼 독립성을 보장합니다. 하지만 사람이 하는 일이다 보니 가끔 문제가 있을 수도 있겠지요? Gabriel님께서 겪으셨던 문제는 자바 버전의 차이, 환경 설정의 문제, 또는 둘의 조합일 수 있습니다.
감사합니다.
문제와 풀이4 문제점
0
39
2
문제풀이 시간마다 방향성
0
38
2
피라미드 문제 풀이
0
70
1
ScannerWhile3 예제 코드 질문
0
53
1
짝수 출력 문제 질문
0
49
1
Array 연습 문제 5번 질문입니다.
0
83
2
단축어가 이상하게 나옵니다
0
128
2
Sql강의
0
88
1
array 문제풀이 2번 질문입니다.
0
54
1
JAVA입문 / 메서드편 문제와 풀이2
0
46
1
인텔리제이 무료버젼이 통합되었다는데 30일 무료버전이면 어떻게 사용하나요
1
792
3
OperationEx3에서 꼭 boolean을 써야 하나요?
0
58
1
for, while문 작성
0
64
1
68강 ArrayEx6 클래스 질문
0
58
1
IO.println(String.format("Hello and welcome!"));
0
144
2
소스코드 실행이 안돼요
0
118
2
메서드 문제와 풀이2에서 마지막 문제 이렇게 풀어도 괜찮은 건가요..?
0
78
1
While과 for 스코프 질문
0
61
1
김영한 java 입문 설치 질문
0
136
2
버퍼문제?
0
53
1
for문 피라미드 찍는거 질문
0
77
1
21버전이 없고, 강의 메뉴얼 확인해보면 된다는 김영한 선생님 답변 확인했습니다.
0
371
1
3번 문제 질문 있습니다.
0
95
2
sout에는 변수가 하나만 들어가야 하나요?
0
133
1







