Better instructions for working with Maven · Issue #445 · typetools/checker-framework



Better instructions for working with Maven · Issue #445 · typetools/checker-framework

Hi. I submitted a few issues I had working with the checker framework, mostly due to the fact I was trying to avoid using the annotated JDK. The main reason for that was that I could not accept adding a system dependency (to a file somewhere in the local machine) or adding the jar to my source control to be able to refer to the annotated JDK jar.

After much trouble, I've come to a good solution that lets Maven take care of finding the jar and providing it to the checker framework.

I submit this issue as a request to add this to the documentation as the preferred way to use checker in Maven (similar approaches should work in Ant and Gradle).

First of all, to enable the checker framework, I simply add it as an annotation processor in the pom. This is done in the declaration of the maven-compiler-plugin. Then, I just add some compiler arguments that get passed to the NullnessChecker, like the location of my stubs (to annotate library methods), and importantly, the location of the annotated JDK in a system-independent, no setup way (Maven will download the jdk jar and figure out its location):


Read full article from Better instructions for working with Maven · Issue #445 · typetools/checker-framework


No comments:

Post a Comment

Labels

Algorithm (219) Lucene (130) LeetCode (97) Database (36) Data Structure (33) text mining (28) Solr (27) java (27) Mathematical Algorithm (26) Difficult Algorithm (25) Logic Thinking (23) Puzzles (23) Bit Algorithms (22) Math (21) List (20) Dynamic Programming (19) Linux (19) Tree (18) Machine Learning (15) EPI (11) Queue (11) Smart Algorithm (11) Operating System (9) Java Basic (8) Recursive Algorithm (8) Stack (8) Eclipse (7) Scala (7) Tika (7) J2EE (6) Monitoring (6) Trie (6) Concurrency (5) Geometry Algorithm (5) Greedy Algorithm (5) Mahout (5) MySQL (5) xpost (5) C (4) Interview (4) Vi (4) regular expression (4) to-do (4) C++ (3) Chrome (3) Divide and Conquer (3) Graph Algorithm (3) Permutation (3) Powershell (3) Random (3) Segment Tree (3) UIMA (3) Union-Find (3) Video (3) Virtualization (3) Windows (3) XML (3) Advanced Data Structure (2) Android (2) Bash (2) Classic Algorithm (2) Debugging (2) Design Pattern (2) Google (2) Hadoop (2) Java Collections (2) Markov Chains (2) Probabilities (2) Shell (2) Site (2) Web Development (2) Workplace (2) angularjs (2) .Net (1) Amazon Interview (1) Android Studio (1) Array (1) Boilerpipe (1) Book Notes (1) ChromeOS (1) Chromebook (1) Codility (1) Desgin (1) Design (1) Divide and Conqure (1) GAE (1) Google Interview (1) Great Stuff (1) Hash (1) High Tech Companies (1) Improving (1) LifeTips (1) Maven (1) Network (1) Performance (1) Programming (1) Resources (1) Sampling (1) Sed (1) Smart Thinking (1) Sort (1) Spark (1) Stanford NLP (1) System Design (1) Trove (1) VIP (1) tools (1)

Popular Posts