2013-04-25 11 views
9

Tôi muốn thiết lập bản dựng kiến ​​cho dự án của mình. Tôi tìm thấy một hướng dẫn nói rằng tôi cần phải viết các lệnh sau đây để chuẩn bị cho kiến ​​xây dựng:Cách sử dụng kiến ​​để xây dựng với android

android update project -p 

sau đó tôi nhận được kết quả

Updated local.properties 
Updated file ./proguard-project.txt 
It seems that there are sub-projects. If you want to update them 
please use the --subprojects parameter. 

nên nếu tôi cố gắng

android update project -p . --subprojects 

sau đó tôi nhận được:

Updated local.properties 
Updated file ./proguard-project.txt 
Error: The project either has no target set or the target is invalid. 
Please provide a --target to the 'android update' command. 

và nếu tôi cố gắng

ant release 

tôi nhận được

sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through an env var 

một ai có thể vui lòng giúp tôi trong việc thiết lập các dự án với kiến. Cảm ơn

Trả lời

14

Tôi cũng có cùng một vấn đề.
Sự cố của tôi đã được giải quyết bằng lệnh sau.

android update project --path . --subprojects --target android-19 


ANT sẽ tự động thiết lập bạn sdk.dir thành đúng.
Không đặt bất kỳ thứ gì bên trong số địa phương của bạn.tính chất.

# This file is automatically generated by Android Tools. 
# Do not modify this file -- YOUR CHANGES WILL BE ERASED! 
# 
# This file must *NOT* be checked into Version Control Systems, 
# as it contains information specific to your local configuration. 

# location of the SDK. This is only used by Ant 
# For customization when using a Version Control System, please read the 
# header note. 
+1

Mục tiêu phải được chỉ định là: '--target android-19'. –

0

Đảm bảo có mục tiêu được đặt trong các dự án của bạn (dự án chính và thư viện).

trên Eclipse: Nhấp chuột phải vào dự án -> Thuộc tính -> Android và chọn SDK mục tiêu của bạn. Điều này có nghĩa là phiên bản Android SDK bạn đang nhắm mục tiêu. Nếu bạn nhìn vào tệp manifest.xml, bạn sẽ thấy rằng hầu như ngay từ đầu:

<uses-sdk 
    android:minSdkVersion="9" 
    android:targetSdkVersion="17" /> 

Đây là phiên bản đích cho dự án của bạn, và thường được khuyến cáo là cao nhất (mới nhất) nhất có thể.

Sau đó, hãy chắc chắn rằng file project.properties có một dòng tương tự như thế này:

target=Google Inc.:Google APIs:17 

Tập tin này sẽ được đọc bởi ANT để biết mục tiêu của dự án của bạn. Bạn có thể thêm dòng đó theo cách thủ công. Trên thực tế, tôi khá chắc chắn rằng sẽ được bao gồm tự động nếu bạn đặt mục tiêu cho các dự án trong Eclipse (như tôi đã nói ở trên) trước khi chạy android update project -p . --subprojects

Về lỗi này:

sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through an env var 

Nó có nghĩa là bạn trai tôi không không xác định thuộc tính sdk.dir, nên trỏ đến thư mục gốc sdk android trong hệ thống tệp của bạn. Sau khi chạy android update project -p . --subprojects, nó sẽ được tạo tự động cho tất cả các dự án của bạn. Có thể là do lỗi trước đó. Vì vậy, rà soát tất cả các dự án của bạn cho các tập tin gọi là local.properties và chắc chắn có chứa một dòng tương tự như sau:

sdk.dir=/home/path/to/android/sdk/android-sdk-linux 
+0

tôi có nộp project.properties của tôi với một dòng: target = android-18 và cũng có một cái gì đó tương tự như những gì bạn mô tả trong file manifest.xml, tuy nhiên tôi nhận được thông báo tương tự như OP. "Có vẻ như có các dự án phụ. Nếu bạn muốn cập nhật chúng, vui lòng sử dụng tham số --subprojects." – neodymium