2012-01-15 1 views
0

몇 년 전에 작업 한 일부 오래된 코드를 업데이트하라는 메시지가 표시되었습니다. xcode는 일식이 아니므로 변경이 급히 필요하므로 xCode ATM에서 마이그레이션 할 시간이 없습니다.WebObjects 지원되지 않는 major.minor 버전 49.0 오류

xcode 3.1.4가 설치된 OS 10.5.8 상자에 코드가 있으며 코드가 로컬에서 올바르게 컴파일되었습니다.

배포를 시도한 적이 없다 "지원되지 않는 major.minor 버전 49.0 오류"서버가 JVM 1.4.2를 실행하고있는 것처럼 보입니다. 1.6 로컬에 1.6이 있습니다. 내 로컬 컴퓨터을 java 1.4.2로 다운 그레이드하는 방법에 대한 지침을 따랐습니다.

그래서 전 사이트의 이전 복사본을 서버에 다시 넣습니다. 그러나 이제 서버의 모든 사이트에 동일한 오류 메시지가 표시되고 3 ~ 4 년 내에 손댈 수 없더라도 시작되지는 않습니다. 무슨 일 있었는지 확실하지 않아? 내 유일한 논리적 인 설명은 내가 실수로 로컬 대신 서버에서 하나의 작업을 한 것입니까? 어쨌든 나는 무엇이 잘못되었거나 그것을 고치는 방법을 모른다.

  • 어디에서 디버깅을 시도합니까?
  • 서버 (OS 10.3.9)에 java 1.5 또는 1.6의 새 버전을 설치하고 webobjects에서 제대로 작동합니까?
+0

내가 백업에서 전체 서버를 복원 끝났다. 지금은 잘 작동 – Daveo

답변

1

이 프로젝트는 프레임 워크입니까? 다른 WebObjects 프로젝트가 의존하는 프레임 워크 인 경우이 프로젝트를 업데이트 할 때 모든 것이 실패하기 시작한 이유를 설명합니다.

기본적으로 Xcode는 종속 된 라이브러리 또는 프레임 워크를 Project.woa 번들에 포함시키지 않았습니다 (또는 "포함"). 이러한 방식으로 구축 된 앱은 몇 가지 특정 위치에서 필요한 모든 리소스를 사용하여 실행 한 다음로드합니다. 모두가 호환되지 않는 프레임 워크 또는 라이브러리에 링크되어 있으면 작동하지 않게됩니다.

실제 "지원되지 않는 major.minor 버전"오류가 발생하는 한 Mac에서 Java 버전을 다운 그레이드 할 필요가 없으면 컴파일러에서 이전 버전의 Java를 대상으로 지정하기 만하면됩니다.

Xcode에서 Ant를 사용하여 Java 컴파일을 수행했는지 알 수 없지만 Ant 1.7 이상을 사용하는 경우 Ant를 Java 1.6과 함께 1.4 호환 바이너리로 컴파일하도록 편집 할 수 있습니다. xml 파일이 포함되어 있으므로 javac 태그에는 <javac target="1.4" ... />과 같은 "target"매개 변수가 포함되거나 명령 줄을 통해 또는 Ant가로드 할 등록 정보 파일을 수정하여 Ant를 호출 할 때 ant.build.javac.target 속성을 전달합니다. build.properties는 여전히 Xcode 기반 WebObjects 프로젝트에 존재한다고 생각합니다. 만약 그렇다면 이것은 부동산에 좋은 장소가 될 것입니다.

기본 사항이 유래 질문이 적용됩니다 : How to compile classes to JDK1.5 when ant is running in JDK1.6

+0

덕분에 나는 이클립스로 프로젝트를 옮겼습니다. 하지만 팁 주셔서 감사합니다. – Daveo