버그 해결을 위한 모든 질문을 던져
+1 vote
278 views
mainTemplete.gradle을 유니티가 생성하면 gradle 버전은 3.2.0입니다. (2018) 이상태서 빌드를 하면 유니티 내부에 gradle을 사용해서 빌드하는거 같은데요. (NDK처럼 설치한적 없으니)

엔진 업데이트 5.6 ->2018 하는 중인데 빌드 과정중 마지막 단계인 gradle에서 실패해서.. 에러 보기 까지 너무 오래 걸리는지라 프로젝트를 안드로이드 스튜디오로 익스포트 했습니다.

 

안드로이드 스튜디오에서 프로젝트 오픈할때 그래들설치 위치를 요구하기에 유니티 내부에 그래들 폴더를 지정하니 제대로 못 읽네요.

그래서 브류로 그레들을 설치하고 \5.4\libexec\를 지정했더니 열립니다. 그런데 이 경우 failed for task app:compiledebugjavawithjavac가 납니다.  해결책을 찾아보면

1. 안드로이드 스튜디오 옵션에서 컴파일러 버전 바꿔주기 -> 자바 컴파일러 항목이 없음

2. .gradle\ 삭제 ->변화 없음

 

이 상태로는 해결책이 보이지 않아서... 뽑는 단계로 돌아갔습니다. 가설은 유니티는 그래들 버전으로 3.2.0을 지정해줬는데 홈브류로 설치한 gradle_home은  5.4라서그런가 싶어서 다시 익스포트하고 3.2.0을 설치. 이걸 지정 해줬습니다.

1. 3.2.0에선 리포지토리 google()을 못 쓴다기에 지워줌

2. 저장소를 정상적으로 찾을 수 없다기에 메이븐을 추가

3. 적어도 그레들 4.6을 설치하라, 현재는 3.2 이다 라고 뜸.

 

 

궁금한 점은 이겁니다.

1. 안드로이드 스튜디오에서 수동 빌드 되는거 맞나요? 예~전에 이클립스 쓸땐 보는거만 디고 빌드는 안된다고 했던거 같은데..

2. 그래들 버전을 유니티가 지정해주는거 말고 막 올려도 되나요? maintemplate.gradle에서 올리면 익스포트 안하고 빌드할때 참조 문제가 안생기나요?

3. 프로젝트에 포함된 회사 라이브러리(*.aar) 가 더 최신에서 빌드했다거나 하는게 지금 빌드시 영향을 줄 수 있을까요??

4. 애초에 이런 문제는 왜 생기는걸까요...

 

감사용
asked (109 point) , 278 views

1 답변

0 votes
1. 네 됩니다.

2. 테스트용도로 export시 저는 gradle 버젼을 올려서 그에 맞도록 수정해서 빌드했었습니다.

3. 영향 없을것으로 사료됩니다.

4. 5.6에서 상위 유니티 버젼으로 마이그레이션시 유니티 버젼이 올라가면서 내부 gradle 빌드 툴 버젼이 올라감에 따라 생기는 현상인거 같은데요. 최근에 저 역시 5.6에서 2019로 업그레이드하면서 기존에 사용했던 mainTemplete.gradle 내용에서 일부를 수정하고 잘 사용중입니다.
answered (103 point)

버그 해결을 위해 도움을 구하고, 도움을 주세요. 우리는 그렇게 발전합니다.

throw bug 는 프로그래밍에 대한 전분야를 다룹니다. 질문,논의거리,팁,정보공유 모든 것이 가능합니다. 프로그래밍과 관련이 없는 내용은 환영받지 못합니다.

186 질문
289 answers
314 댓글
307 users