typetools / typetools/checker-framework
javac wrapper not matching javac behavior
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 1.1k
- Forks
- 440
- Avg merge
- 1d 12h
- Merged PRs (30d)
- 134
Description
I'm trying to run a compilation with javac arguments in an arguments file. Here is the file:
When I run javac @test-args the compile succeeds. But when I run $CHECKERFRAMEWORK/checker/bin/javac @test-args I get a compile error:
$ $CHECKERFRAMEWORK/checker/bin/javac @test-args
/Users/msridhar/git-repos/dljc-experiment/outdir/nomulus/core/src/main/java/google/registry/model/smd/SignedMarkRevocationList.java:83: error: cannot find symbol
Map</*@MatchesPattern("[0-9]+-[0-9]+")*/ String, DateTime> revokes;
^
symbol: class MatchesPattern
location: class SignedMarkRevocationList
My guess is somehow the classpath is not getting passed along correctly to the underlying javac. I am hoping the test-args file is enough to debug this issue. If not, I can try to give more proper repro instructions when I get more time.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the checker/bin/javac wrapper and the attached test-args file. Compare the wrapper's invocation with direct javac, focusing on how the argument file and classpath reach the underlying compiler. Done means the wrapper reproduces direct javac behavior for this compilation without the missing MatchesPattern error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- compilers, tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100