Tôi đang làm theo hướng dẫn trên trang này (http://tools.android.com/tips/lint-custom-rules). Tôi bị kẹt ở bước:Thêm Quy tắc Lint Tuỳ chỉnh
lint --show MyId
Tôi nhận được thông báo lỗi sau, có ý tưởng nào không?
Could not load custom rule jar file /Users/me/.android/lint/CustomLintRule.jar java.lang.NoSuchMethodError: com.android.tools.lint.detector.api.Issue.create(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/android/tools/lint/detector/api/Category;ILcom/android/tools/lint/detector/api/Severity;Ljava/lang/Class;Ljava/util/EnumSet;)Lcom/android/tools/lint/detector/api/Issue; at googleio.demo.MyDetector.(MyDetector.java:16) at googleio.demo.MyIssueRegistry.getIssues(MyIssueRegistry.java:15) at com.android.tools.lint.client.api.JarFileIssueRegistry.(JarFileIssueRegistry.java:93) at com.android.tools.lint.client.api.JarFileIssueRegistry.get(JarFileIssueRegistry.java:70) at com.android.tools.lint.client.api.LintClient.addCustomLintRules(LintClient.java:911) at com.android.tools.lint.Main.getGlobalRegistry(Main.java:642) at com.android.tools.lint.Main.run(Main.java:204) at com.android.tools.lint.Main.main(Main.java:113) Invalid id or category "MyId".
Có vẻ như bạn đang biên dịch dựa trên một phiên bản API và đang chạy với một phiên bản khác. Xem lưu ý trong phần tạo vấn đề về cách sử dụng Công cụ 22. – brindy
Tôi đã biên dịch jar bằng lint-api-23.0.2.jar và cũng là phiên bản lint 23.0.2 của tôi khi tôi kiểm tra tại teerminal của tôi bằng lint --version. Vẫn nhận được cùng một lỗi. – guydemossyrock
Bạn có thể đăng mã bạn đã có không? Tôi đoán bạn đang gọi phiên bản 7 đối số của #create vì đó là phiên bản không thể tìm thấy - nhưng phiên bản Công cụ 22+ có 8 đối số, có nghĩa là classpath của bạn tại thời điểm xây dựng có thể có thứ gì đó không rõ ràng. – brindy