2013-10-22 53 views
5

Tôi đang sử dụng Android Studio 0.3.0 (được định cấu hình để sử dụng trình bao bọc gradle để tạo), Gradle 1.8. Mỗi lần tôi xây dựng (hoặc xây dựng lại) dự án với Android Studio, tôi nhận được lỗi:Không thể xây dựng dự án Gradle với Android Studio

Gradle: A problem occurred evaluating project ':MyProject'. 
> For input string: "" 

Nhấp vào lỗi, đây là mã lỗi trong build.gradle:

def getCommitsCount() { 
    return 'git rev-list --count HEAD'.execute().text.toInteger() 
} 

Nếu tôi loại bỏ .toInteger() sau đó lỗi đã biến mất. Nếu không, tôi có thể xây dựng dự án từ bảng điều khiển chỉ tốt ./gradlew clean check build.

Bất kỳ ai cũng gặp vấn đề tương tự? Có vẻ như đó là sự cố của Android Studio. Nếu bạn biết cách giải quyết hoặc sửa chữa, điều đó sẽ thật tuyệt.

+1

Đối với một lý do không rõ, gọi ' 'git rev-list --count HEAD'.execute() văn bản' từ Android Studio luôn luôn trả' "". '. Vì vậy, tôi đã thực hiện một giải pháp thay thế bằng cách kiểm tra xem văn bản có phải là số nguyên không trước khi truyền nó thành số nguyên: 'return result.isInteger()? result.toInteger(): 0' –

Trả lời

0

Tôi nghĩ Android Studio chạy "làm" từ một thư mục khác nhau, vì vậy đây là sửa chữa của tôi và nó hoạt động như mong đợi:

def getCommitsCount() { 
    return "git --git-dir=${projectDir}/.git --work-tree=${projectDir} rev-list --count HEAD".execute().text.toInteger() 
} 
+0

Tôi thấy đây là vấn đề trong trường hợp của tôi mặc dù nó chỉ làm việc với $ {rootDir} vì $ {projectDir} sẽ là $ {rootDir}/app và repo của tôi được lưu dưới gốc . – gardarh

0

tôi đã cùng một vấn đề với việc số lượng cam kết. Những gì đã làm việc cho tôi cuối cùng là

def getGitCommitCount() { 
    def process = "git rev-list HEAD --first-parent --count".execute() 
    return process.text.toInteger() 
} 
1

Có lẽ bạn đã xóa xcode gây ra issuse. Hãy thử cài đặt lại Công cụ Dòng lệnh để đảm bảo git hoạt động bình thường.

chạy như sau lệnh:

xcode-select --install

Bấm “Cài đặt” để tải về và cài đặt Xcode Command Line Tools.

2

Để tìm hiểu lý do luồng đầu ra trống truy cập luồng lỗi bằng cách sử dụng err.

def getCommitsCountError() { 
    return 'git rev-list --count HEAD'.execute().err.text.toInteger() 
} 

Có khả năng JChord đã cho rằng lỗi đó có thể xảy ra.

"xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun"

Sau đó, giải pháp là (lại) cài đặt Công cụ dòng lệnh Xcode.

xcode-select --install

như git is connected to it.

0

Vấn đề của tôi là tôi không có một phiên bản Xcode chọn.

Bạn cũng có thể thử cài đặt lại Xcode Command Line Tools: xcode-select --install

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