ปัญหาที่พบเจอ
เมื่อใช้งาน
Cobertura กับ Java 1.8 และ Apache Maven 3
จะเจอปัญหาที่ทำให้ไม่สามารถสร้าง report ได้
ซึ่งเกิด error message ดังนี้
[gist id="e5cbc18e50724f1c0a4b8bc14128f489" file="error.txt"]
วิธีการแก้ไขปัญหา
สาเหตุที่เจอคือ cobertura maven plugin 2.6 นั้นใช้งาน cobertura 2.0.3
ภายในจะใช้งาน ASM 4.1 ซึ่งไม่สนับสนุน Java 8
ดังนั้นสิ่งที่ต้องทำคือ เปลี่ยน version ของ ASM ซะ ในการ build
ซึ่งทำในไฟล์ pom.xml ของ Apache Maven ดังนี้
[gist id="e5cbc18e50724f1c0a4b8bc14128f489" file="pom.xml"]
ปล. แก้ไขปัญหานี้ง่าย ๆ ด้วยการใช้งาน cobertura maven plugin 2.7 นะครับ
โดยเครื่องมือที่คล้าย ๆ กันเช่น
Jacoco ก็มีปัญหาเช่นเดียวกัน