IntelliJ IDEA를 기반으로 새 IDE Android Studio에서 패키지 이름을 어떻게 바꾸나요?
자동 리팩토링이 포함되어 있습니까?
대량 리팩토링을 만들고 싶지만 방법을 모르겠습니다. 나는 Eclipse에서 2 년을 일했으며 Eclipse에서는 원 클릭 작업입니다.
IntelliJ IDEA를 기반으로 새 IDE Android Studio에서 패키지 이름을 어떻게 바꾸나요?
자동 리팩토링이 포함되어 있습니까?
대량 리팩토링을 만들고 싶지만 방법을 모르겠습니다. 나는 Eclipse에서 2 년을 일했으며 Eclipse에서는 원 클릭 작업입니다.
답변:
예를 들어로 변경 com.example.app
하려면 my.awesome.game
다음을 수행하십시오.
당신의에서 프로젝트 창 (작은 기어 아이콘을 클릭 )
Compact Empty Middle Packages
옵션을 선택 취소 / 선택 취소
패키지 디렉토리가 이제 개별 디렉토리로 나뉩니다.
이름을 바꾸려는 각 디렉토리를 개별적으로 선택하고 다음을 수행하십시오.
Refactor
Rename
Rename Package
디렉토리 이름 바꾸기 대신을 클릭하십시오.com
Android Studio에서 이름을 바꾸면 경고가 표시 될 수 있습니다. 이러한 경우 모두 이름 바꾸기를 선택하십시오.이제 Gradle 빌드 파일을 엽니 다 ( build.gradle
-보통 app
또는 mobile
). 업데이트 applicationId
의를 defaultConfig
이미 자동으로 업데이트되지 않은 경우, 새 패키지 이름 및 동기화 Gradle을에 :
package=
매니페스트 에서 속성 을 변경해야 할 수도 있습니다 .
청소하고 재건하십시오.
끝난! 어쨌든 Android Studio는이 프로세스를 조금 더 단순하게 만들어야합니다.
com.example.test
에 com.example
다음 삭제합니다 com.example.test
.
또 다른 좋은 방법은 다음과 같습니다. 먼저 Java 폴더 → 새로 만들기 → 패키지 를 마우스 오른쪽 단추로 클릭하여 원하는 이름으로 새 패키지를 작성하십시오 .
그런 다음 모든 클래스를 선택하고 새 패키지로 끕니다. Android Studio는 어디에서나 패키지 이름을 리팩터링합니다.
마지막으로 이전 패키지를 삭제하십시오.
끝난.
매우 중요:
이 방법을 사용하는 경우 AndroidManifest.xml 및 build.gradle 파일을 새 패키지 로 수동으로 변경해야합니다 .
응용 프로그램 ID 변경 (이제 패키지 이름과 무관)을 한 번에 매우 쉽게 수행 할 수 있습니다. AndroidManifest를 만질 필요는 없습니다. 대신 다음을 수행하십시오.
패키지 이름 은 변경 되지 않습니다 . 패키지 이름과 응용 프로그램 ID의 분리는 여기에 설명되어 있습니다 : http://tools.android.com/tech-docs/new-build-system/applicationid-vs-packagename
com.example.sample
com.example
패키지 이름을 바꾸는 데 사용하는 방법은 다음과 같이 간단합니다.
1 단계 : Android Studio의 왼쪽 메뉴에서 프로젝트 옵션을 선택합니다
2 단계 : Java를 마우스 오른쪽 단추로 클릭하고 새 패키지를 추가하고 원하는 패키지 이름을 설정하십시오.
3 단계 : 새 패키지 이름을 입력하십시오
4 단계 : 이전 패키지에서 모든 파일을 복사하고 새 패키지에 붙여 넣기
5 단계 : 매니페스트 파일에서 패키지 이름 바꾸기
6 단계 : build.gradle 파일에서 패키지 이름 바꾸기
7 단계 : 이전 패키지를 마우스 오른쪽 버튼으로 클릭하고 모든 데이터로 삭제하고 해당 디렉토리를 삭제하십시오
8 단계 : 그런 다음 프로젝트 재 구축
9 단계 : 프로젝트에서 이전 가져 오기 패키지 이름의 일부 오류를 발견 합니다. 파일에서 이전 패키지 이름을 선택하고 CTRL + Shift + R 을 누르고 바꾸기 상자에 새 패키지 이름을 입력 한 다음 찾기를 누릅니다
10 단계 : 다음과 같은 팝업이 나타나고 모든 파일 옵션을 선택하십시오
11 단계 : 프로젝트를 다시 빌드하십시오 .bingo 프로젝트 패키지 이름이 변경되었습니다 :)
아래 표시된 것처럼 패키지 이름에 커서를 놓습니다. 선택하지 말고 배치하십시오.
그런 다음 Shift+ F6를 누르면 아래와 같이 패키지 이름 바꾸기를 선택하는 팝업 창이 나타납니다 .
새 이름을 입력하고 리 팩터를 선택하십시오 . (내 커서가 "무언가"에 있으므로 이름 만 바뀝니다.)
끝났습니다.
프로젝트 패널 에서 패키지를 마우스 오른쪽 버튼으로 클릭하십시오 .
상황에 맞는 메뉴에서 리 팩터-> 이름 바꾸기를 선택하십시오.
파일을여십시오 :
앱 → 매니페스트 → AndroidManifest.xml
수정하려는 패키지 이름의 각 부분을 강조 표시 한 후 (전체 패키지 이름을 강조 표시하지 마십시오) 다음을 수행하십시오.
패키지 이름의 각 부분에서이 단계를 수행하십시오.
(Gradle Script) >> (build.gradle (Modul : app))을 엽니 다.
applicationId 를 패키지 이름으로 업데이트하십시오.
메뉴 (빌드)를 열고 (프로젝트 다시 빌드)를 선택하십시오.
IntelliJ IDEA에는 "Compact Empty Middle Packages"라는 옵션이 있습니다. 프로젝트 탭 의 옵션 아이콘을 선택하고 비활성화하십시오.
리팩토링 할 패키지를 선택하십시오. 리팩터링 → 이동 → "xxx를 새 패키지로 이동" .
나는 가장 많이 투표 된 답변을 보았지만이 작업과 약간 다른 것으로 나타났습니다. 가장 완전한 자습서를 수행하려고합니다.
Android Studio에서 톱니 바퀴 아이콘 ( )을 클릭 한 다음 옵션 :을 선택 "Compact Empty Middle Packages"
하여 폴더를 트리보기로 분리하십시오.
이제 폴더를 선택하고 마우스 오른쪽 버튼을 클릭하여 상황에 맞는 메뉴를 열고를 선택한 Refactor
다음Rename
패키지를 리팩토링하는 것이 좋습니다.
그런 다음 창에 proyect 내부의 일치가 표시됩니다 "Do Refactor"
.
우리는 수동으로 AndroidManifest.xml 또는 build.gradle 파일을 변경할 필요가 없습니다. 패키지 리팩터링이 작동합니다!.
패키지 이름은이 점 분리보다 더 있으면 말을 com.hello.world
하고 또한, 당신은 아무것도 넣지 않았다 com/
및 com/hello/
. 모든 클래스가에 배치 com/hello/world/
되면 Android Studio 또는 IntelliJ에서 패키지 이름을 리팩토링하기 위해 다음 단계를 수행 할 수 있습니다.
com/
, com/hello/
). com.hello.world 패키지에 먼저 두 개의 파일을 추가하여이를 달성 할 수 있습니다.com.hello.world.PackageInfo1.java com.hello.world.PackageInfo2.java
그런 다음 com과 com.hello로 각각 이동하여 리팩터링하십시오. com과 com.hello가 Project에 ( Alt+1
또는 Command+1
바로 가기) 있고 앉아있는 디렉토리 이름 바꾸기가 예상대로 기다리고 있습니다.
하나 이상의 디렉토리 이름을 변경하여 목표에 도달하도록 리 팩터하십시오. 여기서 주목해야 할 것은 대화 상자가 표시 될 때 패키지가 아닌 디렉토리를 선택해야한다는 것입니다.
프로젝트에 많은 클래스가 있으면 자동 스캔 및 이름 바꾸기를 기다리는 데 시간이 걸립니다.
또한 AndroidManifest.xml 내의 패키지 이름을 수동으로 바꾸어야합니다.이 파일의 다른 이름이 접두사에 도움이 될 수 있습니다.
[ALSO] , 모두 com.hello.world.R
새 것으로 교체해야 할 수도 있습니다 XXX.XXX.XXX.R
( Command+Shift+R
짧게).
프로젝트를 다시 빌드하고 실행하여 작동하는지 확인하십시오. 그리고 "경로 찾기"를 사용하여 이름을 바꾸려는 다른 비 터치 이름을 찾으십시오.
Sheharyar의 위대한 답변 으로 가십시오 . 그 뒤에는 많은 답변과 의견이있어 혼란스럽고 포기하기 쉽지만 그렇지 않습니다 . 그 대답 은 효과가 있습니다.
간단히 말해서, 당신은 세 가지 일을합니다 :
(1) 선택을 취소하십시오 Compact Empty Middle Packages
.
(2) Refactor
그런 다음 새 패키지 이름과 일치 Rename
하도록 Change Package
( not Change Directory
)을 선택하여 각 이전 디렉토리 노드 . (변경 사항을 미리보아야합니다.)
(3) build.gradle
파일을 편집 APPLICATION_ID
하고 새 패키지 이름과 일치 시키십시오.
업데이트 된 답변 : 2015 년 5 월
확인 Android Studio에서 프로젝트 복제 및 이름 바꾸기로 어려움을 겪었지만 마침내 달성했습니다. 수행 할 단계는 다음과 같습니다.
그게 다야 ...
이 문제에 대한 더 쉬운 해결책을 찾았으며 생성 된 가져 오기를 변경하고 com.test.testpackagechange.R
약 1 분 밖에 걸리지 않습니다.
첫 번째 단계는 Android Studio를 열고 모든 창 바꾸기 (Mac : cmd + shift + R, Windows : ctrl + shift + R)를 여는 것입니다. 기존 패키지 이름과 새 패키지 이름 아래에 입력하십시오. 찾기를 클릭하십시오. 생성 된 항목도 살펴보고 있기 때문에 시간이 걸릴 수 있습니다. 적중 횟수가 1000 회가 넘는 경우 계속을 클릭하십시오.
그런 다음 모두 바꾸기를 눌러 이전 패키지 이름을 새 이름으로 바꿉니다.
이제 Android Studio를 닫고 Mac의 Finder 또는 Windows의 Windows 탐색기로 이동하십시오. 다음과 같이 폴더 이름을 새 패키지 이름으로 변경하십시오.
이제 Android Studio를 다시 엽니 다. Gradle이 동기화되고 패키지 이름이 새 이름으로 변경되어야합니다.
나는 이것이 가장 쉬운 파일이며 생성 된 파일과 같은 모든 영역을 다루는 것으로 나타났습니다.
특히 도메인을 변경하려는 경우 작동하는 다른 방법이나 추가 답변의 추가 단계를 찾았습니다. Android Studio 1.4에서 작동합니다. 이것이 내가 한 일입니다.
build.gradle
파일을 열고 defaultConfig의 애플리케이션 ID를 매니페스트와 동일한 이름으로 변경하고 프로젝트를 다시 빌드하십시오.예를 들어 "com.example.app"의 이름을 "com.YourDomain.app"로 바꾸려면 패키지 이동 경로에서 이름을 바꿀 패키지 아래의 파일을 열고 커서를 도메인의 "example"부분으로 설정하십시오. 및 히트 Shift+ F6"사용자 도메인"과 이름 바꾸기 패키지.
패키지 이름은 모든 Java 파일 및 매니페스트 파일에서 변경됩니다. 에서 패키지 이름을 수동으로 변경해야합니다 build.gradle
.
패키지 이름 변경
패키지 이름을 바꾸려면 AndroidManifest.xml
파일 로 이동하기 만하면 변경하려는 패키지 이름 부분 앞에 마우스 커서를 놓습니다.
마우스 오른쪽 버튼 클릭> 리 팩터> 이름 바꾸기
새 창에서 패키지 이름 바꾸기를 누르십시오
이름을 변경하고 리 팩터를 누릅니다.
… 아래에있는 리팩터링을 누릅니다.
패키지 이름은 일반적으로 com.domain.appname 형식입니다.이 예에서는 appname 부분을 변경했지만 도메인에 대해서도 동일한 단계를 수행 할 수 있습니다.
끝난! 패키지 이름을 변경했습니다!
최고 투표를 거친 두 가지 솔루션을 시도했지만 어느 정도 작동하지만 일부 문제를 발견했습니다.
몇 가지 실험을 한 후 다음 방법이 나에게 효과적이라는 것을 알았습니다.
패키지 이름의 마지막 부분 만 변경해야하는 경우 GreyBeardedGeek에서 설명한 방법을 사용하십시오.
프로젝트 창에서 패키지를 마우스 오른쪽 버튼으로 클릭하십시오. 상황에 맞는 메뉴에서 리 팩터-> 이름 바꾸기를 선택하십시오.
전체 패키지 이름을 변경해야하는 경우 다음을 수행하십시오.
프로젝트 창에서 패키지를 마우스 오른쪽 버튼으로 클릭하십시오. 상황에 맞는 메뉴에서 리 팩터-> 이동을 선택하십시오.
그러면 새 패키지 폴더가 생성되지만 (필요한 경우) 이전과 같이 패키지 이름의 마지막 부분이 유지됩니다. 마지막 부분을 변경해야하는 경우 그에 따라 이름을 바꿉니다.
또한 build.gradle, manifest 및 / 또는 xml 리소스 파일 또는 하드 코드 된 경우 코드에서 패키지 이름을 수정해야 할 수도 있습니다. 그런 다음 필요에 따라 프로젝트 동기화 / 청소 / 재 구축을 수행하십시오.
package-> refactor를 마우스 오른쪽 버튼으로 클릭하고 이름을 변경하십시오.
매니페스트에서 변경할 수도 있습니다. 때로는 패키지 이름을 변경하지만 .apk 파일을 만든 후 다른 패키지 이름이 표시되는 경우가 있습니다. 그때 build.gradle 파일 에서 "applicationId"를 확인 하십시오.
Sublime Text (또는 Notepad ++ ) 를 사용하는 것이 좋습니다 . ... \ Projects [MyProject]에서 com.one.lastname-> com.two.newname 및 com / one / lastname-> com / two / newname을 바꾸십시오. ... \ Projects \ MyProject \ app \ src \ main \ java \ com \ one \ lastname, ... \ Projects \ MyProject \ app \ src \ test \ java \ com \ one \ lastname의 이름을 바꾸는 것을 잊지 마십시오. 그리고 ... \ Projects \ MyProject \ app \ src \ androidTest \ java \ com \ one \ lastname!
그게 다야:)
나는 당신이 찾고있는 것이 리 팩터> 이동이라고 생각합니다. F6을 누를 수도 있습니다.
두 개의 팝업이 나타납니다. 패키지 이름 바꾸기를 모두 선택하십시오. 그런 다음 새 패키지 이름을 입력하라는 팝업이 나타납니다.
패키지 이름이 예를 들어 com.example.android.projectname이면 com.example.android를 다른 것으로 변경할 수 있습니다.
한 가지 더, 이것은 build.gradle의 applicationId도 업데이트합니다. "주석 및 문자열 검색"및 "텍스트 발생 검색"의 확인란이 모두 선택되어 있는지 확인하십시오.
빠르고 쉬운 방법 :
1- 열려 MainActivity.java
있거나 사용 가능한 Java 파일.
맨 위에는 다음과 같은 패키지 선언이 있습니다.
패키지 com.
example
.myapp;
변경하려는 패키지 부분을 선택하고 Shift + F6을 누르 십시오 . 개인적으로을 변경하고 싶습니다 example
.
경고 대화 상자에서 패키지 이름 바꾸기 를 선택한 다음 원하는 패키지 이름을 삽입하십시오.
2- 태그를 열고 AndroidManifest.xml
내부 에서 원하는 패키지 이름으로 <manifest>
변경하십시오 package
.
3-를 열고 원하는 패키지 이름으로 build.gradle(Module: app)
변경하십시오 applicationId
.
다음 단계를 시도하십시오 :
******* 마지막으로 완료되었습니다 ******
ctrl+ Shift+ R는 항상 나를 위해 일했습니다. 간단하게 replace all
선택하십시오 All Files
.
첫 번째 부분은 아래에 새 패키지를 만드는 구성 java
폴더를 선택한 다음에서 모든 소스 파일을 드래그 old package
여기에 new package
. 그런 다음 remane
android의 패키지 이름을 manifest
새 패키지의 이름으로 만들어야 합니다.
2 단계에서 수행해야 할 작업이 있습니다 . 에서의 패키지 이름을 변경하는 것 외에도 Android Studio applicationId
의 모듈 아래 에서 이전 패키지 이름을 변경해야 build.gradle
합니다 manifest
. 요약 build.gradle
하면 "AndroidManifest.xml"아래 에 있는을 클릭하고 applicationId
새 패키지 이름으로 값을 수정하십시오 .
그런 다음 맨 아래의 build
. clean
그런 다음 프로젝트를 수행하십시오 rebuild
. 여기서부터는 괜찮을 것입니다.