app engine deploy 에러 java7

반응형

용감하게 app engine에 계정을 만들고 등록 후 

이클립스를 깔고 플러그인 설치 후 (4.2버전)

로컬에서 샘플코드가 동작하는 것을 확인 했는데..

디플로이 시 아래와 같은 에러가 난다....

해결책은.... 

------------ Deploying frontend ------------


Preparing to deploy:

Created staging directory at: 'C:\Users\chan\AppData\Local\Temp\appcfg5591258823302177949.tmp'

java.lang.RuntimeException: The application contains Java 7 classes, but the --use_java7 flag has not been set.


Debugging information may be found in C:\Users\chan\AppData\Local\Temp\appengine-deploy4754890449691318476.log


검색을 해보니 다음과 같다..

http://stackoverflow.com/questions/13848495/failed-to-deploy-to-google-app-engine-because-use-java7-flag-has-not-been-set

우선 appcfg.sh를 실행해 줘야 한다고 한다.

appcfg.sh --use_java7 update <나의 war 경로>

윈도우에서는 

appcfg.cmd --use_java7 update <나의 war 경로>

appcfg.cmd의 위치는 다음과 같다.(구성에 따라 조금씩 변형)

~\eclipse\plugins\com.google.appengine.eclipse.sdkbundle_1.7.4\appengine-java-sdk-1.7.4\bin

여기서 위의 명령을 실행 시켰더니.. 아래와 같이 에러가 난다T_T

C:\appengine\eclipse\plugins\com.google.appengine.eclipse.sdkbundle_1.7.4\appengine-java-sdk-1.7.4\bin>appcfg.cmd --use_java7 update C:\appengine\workspace\chlab2\war

Reading application configuration data...

12월 21, 2012 7:06:53 오후 com.google.apphosting.utils.config.AppEngineWebXmlRea

der readAppEngineWebXml

INFO: Successfully processed C:/appengine/workspace/chlab2/war\WEB-INF/appengine

-web.xml

12월 21, 2012 7:06:53 오후 com.google.apphosting.utils.config.AbstractConfigXmlR

eader readConfigXml

INFO: Successfully processed C:/appengine/workspace/chlab2/war\WEB-INF/web.xml

Beginning server interaction for videoal...

0% Created staging directory at: 'C:\Users\chan\AppData\Local\Temp\appcfg1780197

686247910796.tmp'

5% Scanning for jsp files.

20% Scanning files on local disk.

25% Initiating update.

appengine.google.com/api/appversion/create?app_id=videoal&version=1&

400 Bad Request

Invalid runtime or the current user is not authorized to use it.

Unable to update app: Error posting to URL: https://appengine.google.com/api/app

version/create?app_id=videoal&version=1&

400 Bad Request

Invalid runtime or the current user is not authorized to use it.

Please see the logs [C:\Users\chan\AppData\Local\Temp\appcfg5069390772285775813.

log] for further information.


잘 진행 되더가.. 중간부터 에러..

뭔가 나는 사용 권한이 없는가 보다... 그리하여.. 아까 해결책을 좀 더 읽어보니

That said, if you aren't in the TT program you will likely get an error even with those flags set.

이런 말이 있다.

And while Java 7 support is not yet available within the App Engine Java runtime, developers interested in an early preview can sign up for our trusted tester program.

이런 말도 있네.. 신뢰할 수 있는 프로그램에 가입해야 사용이 가능한가보다...

링크를 따라 누르면..

App Engine Java 7 Support - Trusted Tester Sign-up

In an upcoming release, we will be including Java 7 support within the App Engine Java runtime. Before this is available, we wanted to give developers access to a preview of the new functionality. Please take a moment to fill out the following information and someone from the App Engine team will be in contact with you.

이라는 페이지가 나온다. 
메일 넣고, 개발 Framework 넣고... submit... 했는데... 여전히 안 된다..T_T
그래서 위의 메시지를 잘 읽어보니(T_T)
Java 7은 AppEngine에 공식 지원이 아직 안 되나 보다...
그리고 하고 싶으면 가입하고 누군가(?)가 나한테 연락을 준다고 한다...

바로 메일이 안 오는 걸로 봐서 뭔가 팀내 심사 후 처리를 하는 것 같다...

애초에 내가 왜 java 7로 했을까...eclipse 버전이 4.2여서 였겠지...

나머지는 연락오면 해봐야겠지만... 참으로 번거롭다... 
버전이 올라가면 그냥 신경도 안 써도 될 문제 같다만...

--------------------------------------------

해결을 위해 java 1.6을 설치해 보자..

여기서 나처럼 appengine-java-sdk-1.6 버전을 설치해야 java7로 컴파일되지 않는다고 착각하기 쉽다.

appengine-java-sdk버전은 검색을 해 보면 1.6이나 1.5로 대부분 설치 했던 예제들이 있는데 현재 시점에서는 1.7.4버전만 선택된다... 난 이걸 1.6으로 바꿔야 하는 줄 알고 여기 저기 엄청 찾아 다녔다T_T


결론적으로는 이 버전은 java7 버전 빌드와는 아무 상관없다.

1.7.4로 선택하여 빌드 및 deploy 해도 된다는 말씀..

중요한 것은 OS의 jdk/jre 버전이다. 이걸 1.6으로 설치 후에 eclipse의 preferences-java에서 installed JREs 설정 및 compiler에서 Compiler compliance level을 1.6으로 설정 해 준다. 
이런 후에 프로젝트를 만들어 deploy 하면 구글 id.appspot.com에 배포성공 및 접속이 됨을 확인할 수 있다...

괜히 저 숫자 때문에 고생하지 말자:)




반응형

'IT > 개발의짜릿함' 카테고리의 다른 글

GIT 특징  (0) 2013.08.05
모방할 수 없는 서비스 구축  (0) 2012.11.02
DNS-323 FFP(fun_plug) 부팅 시 기동이 안 되는 문제 해결  (0) 2012.07.07

Top