2013-12-18 26 views
6

Tôi cần có khả năng nhập tất cả các dự án của mình trong studio android và tôi chỉ cần nhập một dự án và phụ thuộc vào studio android.Nhập nhiều dự án và dự án đơn lẻ vào Android Studio


cấu trúc hiện tại dự án:

  • chi nhánh/
    • Apps/
      • Project1/
        • build.gradle
      • project2/
        • build.gradle
      • Project3/
        • build.gradle
      • build.gradle
      • settings.gradle
      • gradlew
      • gradlew.bat
      • gradle/
    • OtherStuff/

tôi có thể nhập khẩu các branch/Apps/build.gradle tốt và nó nhập khẩu tất cả các dự án thuộc Apps và biên dịch tất cả các dự án trong settings.gradle và hoạt động tốt. Tuy nhiên, tôi cũng cần phải có khả năng nhập chỉ một dự án và các phụ thuộc của nó, vào studio android và nó hoạt động tốt.

Ngay bây giờ khi tôi cố gắng nhập studio Android branch/Apps/Project1/build.gradle cung cấp cho các lỗi sau:

You are using an old, unsupported version of Gradle. Please use version 1.8 or greater. 
Please point to a supported Gradle version in the project's Gradle settings or in the project's Gradle wrapper (if applicable.) 

Làm thế nào tôi có thể nhập một dự án duy nhất và có nó sử dụng wrapper gradle rằng việc nhập khẩu MASS của tất cả các dự án là sử dụng? Hay có cách nào tốt hơn để xử lý tình huống này? Có lẽ tôi chỉ làm điều đó hoàn toàn sai.

Hiệu ứng này Phiên bản Android Studio là 0.3.7 và 0.4.0.

Cảm ơn

Trả lời

0

Tôi nghĩ rằng bạn cần phải chỉnh sửa cài đặt wrapper gradle trong gradle/wrapper/gradle-wrapper.properties và thay đổi phiên bản gradle đến 1,8.

+0

Trong 'gradle-wrapper.properties', nó được đặt thành' http \: // services.gradle.org/distributions/gradle-1.8-bin.zip'. Đây là những gì bạn đang đề cập quá? – prolink007

+0

Vâng. Kiểm tra các wrapper hiện đang được sử dụng có thể. Tùy chọn> Gradle> "Sử dụng trình bao bọc gradle mặc định" được chọn? – Andros

+0

Khi tôi cố gắng nhập 'Project1', nó sẽ chỉ cho phép tôi chọn' Sử dụng trình bao bọc gradle tùy chỉnh' hoặc 'Sử dụng phân phối gradle cục bộ'. – prolink007

2

Android Studio dự kiến ​​sẽ thấy tệp settings.gradle tại thư mục gốc của dự án của nó và cũng muốn có tệp trình bao bọc Gradle ở gốc. Nếu bạn đang cố gắng mở, giả sử, Project1 là một dự án độc lập, đó là vấn đề bạn đang gặp phải - không phải điều nào trong số đó nằm trong thư mục của Project1.Nếu Project1 chỉ là một mô-đun trong dự án Ứng dụng lớn hơn, những điều đó là không cần thiết.

Bạn đang cố gắng làm gì? Có thể có một cách tiếp cận tốt hơn là mở một tiểu dự án một cách độc lập.

EDIT:

Nó làm việc cho tôi nếu tôi sao chép các tập tin Gradle wrapper (gradlew, gradlew.bat, và gradle thư mục) vào thư mục của tiểu dự án, và cũng có thể thêm một file settings.gradle trông như thế này:

include ':' 

Dưới đây là một ảnh chụp màn hình của bố cục của dự án của tôi, nơi tôi đã chỉnh sửa Liba để có thể được mở ra một cách độc lập:

Screenshot of Project view showing files in app and LibA directories

Lưu ý rằng nếu các tiểu dự án của bạn có sự phụ thuộc vào nhau (ví dụ: Project1 phụ thuộc vào Project2), thì lược đồ này sẽ không hoạt động. Ngay bây giờ Android Studio sẽ chỉ hiểu rằng trong bối cảnh của một dự án lớn hơn với một thư mục gốc có thể bao gồm tất cả các phụ thuộc.

+0

Mục tiêu của tôi là có khả năng mở tất cả các dự án bằng cách nhập 'branch/Apps/build.gradle' và nhập các dự án riêng lẻ bằng cách nhập một dự án riêng lẻ' build.gradle'. Đối với dự án của chúng tôi để chuyển sang gradle, điều này là cần thiết. – prolink007

+0

Bạn có thể làm điều này với maven nhập vào Android studio và bạn có thể làm điều này với Eclipse. – prolink007

+0

Điều đó là hiển nhiên, nhưng không thực sự trả lời câu hỏi tại sao nó không đủ tốt để chỉ mở dự án Apps lớn hơn nếu bạn muốn làm việc trên một trong các tiểu dự án. Tôi không chắc chắn về các trường hợp sử dụng mà bạn muốn đôi khi làm việc trên chúng trong bối cảnh của một dự án multimodule lớn hơn và đôi khi không. Nếu bạn thực sự cần phải làm việc trên các dự án con một cách độc lập, câu trả lời tốt nhất có thể là làm cho chúng độc lập với các dự án thư viện Android đưa ra AAR tới một kho lưu trữ Maven cục bộ hoặc trung tâm. –

Các vấn đề liên quan