2013-08-06 21 views
5

Khi cố tạo ứng dụng Android mới, tôi có thể xem toàn bộ trình hướng dẫn cho đến khi kết thúc, khi nhấp vào kết thúc sẽ cho tôi lỗi:java.lang.NullPointerException khi tạo ứng dụng android đầu tiên trong ADT Mac Bundle

Lỗi khi chạy trình xây dựng 'Trình quản lý tài nguyên Android' trên dự án 'thử nghiệm'. java.lang.NullPointerException

Tôi đã thử cài đặt lại ADT nhiều lần để không có kết quả. Có ai biết vấn đề của tôi là gì không? Tôi có SDK cho các API mà tôi đang cố gắng sử dụng.

EDIT: không chắc chắn nếu nó của bất kỳ sự giúp đỡ, nhưng khi nhìn vào trang web cập nhật ADT trong 'cài đặt phần mềm mới', tôi trình bày bởi các lỗi

Lỗi khi đọc từ kho: http://dl-ssl.google.com/android/eclipse/site.xml.

Xin cảm ơn, John

Trả lời

3

Tôi đã gặp lỗi này và cuối cùng đã giải quyết vấn đề này cho tình huống của tôi.

Tôi hiện đang chạy Mavericks và đã cài đặt Java 1.7.0_55 và Eclipse Java EE Kepler SR2 64bit. Tôi đã cài đặt thành công plugin ADT trên Eclipse và mọi thứ dường như hoạt động nhưng tôi đã nhận được cùng một lỗi

Errors running builder 'Android Resource Manager' on project 'test'. java.lang.NullPointerException

khi cố tạo dự án ứng dụng Android mới.

Cuối cùng tôi đã quyết định cài đặt Java 1.6 (http://support.apple.com/kb/DL1572) và Gói ADT. Việc chạy Eclipse từ Gói ADT hoạt động tốt, nhưng vẫn có cùng lỗi do Eclipse sử dụng Java 1.7 thay vì 1.6. Để Eclipse sử dụng phiên bản khác, tôi đã thêm

<string>-vm</string><string>/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Commands/java</string>

đến <adt-bundle-directory>/eclipse/Eclipse.app/Contents/Info.plist. Điều này giải quyết được lỗi, và bây giờ tôi có thể tạo một dự án Android mới và chạy một phiên bản Eclipse khác với Java 1.7. (Xem các chú thích trong tệp Info.plist để tìm ra nơi để thêm chuỗi tùy chọn.)

Vì một số lý do, hãy cài đặt phiên bản Eclipse của riêng tôi (Java EE Kepler SR2 chứ không phải là gói trong gói ADT) sử dụng Java 1.6 không hoạt động (Eclipse không còn lỗi con trỏ Null nữa, nhưng nó bị treo khi tạo dự án).

Tôi đoán là tôi nên theo dõi Yêu cầu hệ thống cho Android (Java 1.6) ngay từ đầu, điều này sẽ cứu tôi khỏi tất cả nỗi đau này. Tôi đang chuyển đổi từ Windows, mà không có vấn đề bằng cách sử dụng Java 1.7 cho phát triển Android, mà tôi không chính xác giả định (hy vọng) sẽ là đúng cho MacOS.

+1

tôi đã tư vấn thiết vm trong 'eclipse.ini' để thay thế. –

0

Thử tạo không gian làm việc mới. Ngoài ra, thay vì đọc từ tệp "site.xml", chỉ cần đọc từ chính thư mục đó. Tuy nhiên, bạn không cần phải làm điều đó nếu bạn cài đặt ADT, plugin đã được cài đặt cho bạn. Nếu nó vẫn không hoạt động, hãy mở ứng dụng "SDK Manager" trong thư mục gói ADT của bạn và cài đặt mọi thứ. Bạn có thể cần phải chạy như quản trị viên để làm điều đó.

1

Albert Park là đúng, nhưng tôi có một cách đơn giản khác để khắc phục.

Trước tiên, bạn cần kiểm tra phiên bản java của mình, nếu là 1.7.x bạn chỉ cần xóa nó bằng cách làm theo bài viết này http://docs.oracle.com/javase/7/docs/webnotes/install/mac/mac-jdk.html

Uninstalling the JDK To uninstall the JDK, you must have Administrator privileges and execute the remove command either as root or by using the sudo(8) tool.

Navigate to /Library/Java/JavaVirtualMachines and remove the directory whose name matches the following format:*

/Library/Java/JavaVirtualMachines/jdk<major>.<minor>.<macro[_update]>.jdk 

For example, to uninstall 7u6:

% rm -rf jdk1.7.0_06.jdk 

Đó là tất cả.

1

Cuối cùng, tôi nhận được điều này thông qua.

tham khảo wiki nhật thực (https://wiki.eclipse.org/Eclipse.ini)

-vm value: Mac OS X Example On a Mac OS X system, you can find eclipse.ini by right-clicking (or Ctrl+click) on the Eclipse executable in Finder, choose Show Package Contents, and then locate eclipse.ini in the MacOS folder under Contents.

To specify Java 6 for OS X:

-vm /System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/bin/java For versions of Mac OS X 10.7+ the location has changed to

/Library/Java/JavaVirtualMachines/<''jdk_name_ver''>/Contents/Home/... To be safer, determine the location for the JDK you intend to use via the utility /usr/libexec/java_home and put this value with .../bin/java appended into the Eclipse.ini file.

vì tôi đang sử dụng Mac 10.10. và nhà java của tôi là

/usr/libexec/java_home -V 
Matching Java Virtual Machines (3): 
1.7.0_71, x86_64: "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home 
1.6.0_65-b14-466.1, x86_64: "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home 
1.6.0_65-b14-466.1, i386: "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home 

để tôi thêm sau trong eclipse.ini trước -vmargs

-vm 
/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home/bin/java 

Vậy là xong!

2

Có cùng vấn đề và đã được giải quyết, không quá xa phương pháp của Gavin.

tôi thêm này thay vì Gavin về eclipse.ini trước -vmargs

-vm 
/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Commands/java 
Các vấn đề liên quan