2010-10-29 30 views

Trả lời

5

Tôi không nghĩ rằng bạn có thể sử dụng SnakeYaml trên Android mà không sửa đổi (ít nhất là bây giờ).

Theo mặc định, SnakeYaml sử dụng Introspector để nhận PropertyDescriptors cho lớp học và như tôi có thể thấy java.beans.Introspector không khả dụng trên Android. Nhưng có chế độ BeanAccess.FEILD trong SnakeYaml sử dụng các trường để đổ/tải đậu. Chế độ đó chỉ sử dụng các lớp học java.lang.reflect có sẵn trên Android.

Vì vậy, với một số sửa đổi, nó có thể hoạt động. Nhưng tôi cần phải thử nó để chắc chắn.

Added

phiên bản tương thích Bây giờ android của SnakeYaml có thể được xây dựng sử dụng:

mvn -Pandroid clean package

Cập nhật (tháng 3 năm 2017):

Bắt đầu từ 1,18 android build là trong Trung tâm. Bạn có thể thêm phụ thuộc vào tệp pom.xml của mình như thế này

<dependency> 
    <groupId>org.yaml</groupId> 
    <artifactId>snakeyaml</artifactId> 
    <version> VERSION </version> 
    <classifier>android</classifier> 
</dependency> 
+0

Cảm ơn bạn. Đó là hữu ích để biết. Nếu bạn thử nó, hãy cập nhật chúng tôi tại đây. Tôi sẽ chờ đợi cho bạn để thử nó đầu tiên bởi vì tôi bắt đầu với số không kinh nghiệm. – MountainX

+1

Đúng. Nó không xây dựng mà không sửa đổi. Nhưng ... cái này sẽ hoạt động: http://code.google.com/p/snakeyaml/downloads/detail?name=snakeyaml-android-1.8-SNAPSHOT.jar Hãy nhớ rằng nó sử dụng các trường trên các lớp, chứ không phải các bộ định vị và getters! !! Không có vấn đề gì 'BeanAccess.xxx' chế độ bạn đặt nó luôn luôn là' BeanAccess.FIELD'. Hãy thử nó. Tôi đã tạo một vấn đề về http://code.google.com/p/snakeyaml/issues/detail?id=92 Android miễn phí Hãy đặt nhận xét ở đó. – maslovalex

+0

Cảm ơn bạn đã thực hiện phiên bản sửa đổi đó! – MountainX

0

Tôi nghĩ bạn nên ít nhất là thử trực tiếp snakeyaml. Đối với loại thư viện này, có khả năng cao là bộ Java API cần thiết có sẵn trong Android.

Nếu nó không hoạt động, bạn có thể thử nhập mã nguồn snakeyaml vào một dự án android và xem những gì không biên dịch. Với một chút may mắn, nó sẽ có thể làm việc xung quanh các API bị thiếu.

+0

Cảm ơn sự khuyến khích của bạn. Với kinh nghiệm hạn chế của tôi (chưa có phát triển Android), tôi đã hy vọng một người nào khác đã thử điều này. Nhưng tôi thích snakeyaml, vì vậy nó sẽ tuyệt vời nếu nó hoạt động trên Android. – MountainX

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