Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

infer-and-annotate.sh may require checker-quals.jar on classpath #6239

Closed
jyoo980 opened this issue Oct 13, 2023 · 0 comments · Fixed by #6444
Closed

infer-and-annotate.sh may require checker-quals.jar on classpath #6239

jyoo980 opened this issue Oct 13, 2023 · 0 comments · Fixed by #6444

Comments

@jyoo980
Copy link
Contributor

jyoo980 commented Oct 13, 2023

Running infer-and-annotate.sh on multi-version-control yields the following error(s): https://gist.github.com/jyoo980/ea9cd174057ec9aa0bdc122b4b4587cc

Specifically, the script complains about not being able to load the @Nullable class:

Could not load class: org.checkerframework.checker.nullness.qual.Nullable

Steps to Reproduce

  1. Clone multi-version-control and build it, run: ./gradlew assemble.
  2. Execute infer-and-annotate.sh with the following command, adjust paths as necessary (e.g., replace PATH_TO_MULTI_VERSION_CONTROL the path on your own machine)
infer-and-annotate.sh "NullnessChecker" $CHECKERFRAMEWORK/checker/dist/checker-qual.jar:<PATH_TO_MULTI_VERSION_CONTROL>/build/libs/multi-version-control.jar:<PATH_TO_MULTI_VERSION_CONTROL>/build/libs/multi-version-control-all.jar $(find src/main/java/org/plumelib/multiversioncontrol/ -name "*.java")

The script should finish with no errors with loading Checker Framework annotations, since the classpath includes them ( $CHECKERFRAMEWORK/checker/dist/checker-qual.jar).

Relevant portion of the Checker Framework manual: https://checkerframework.org/manual/#wpi-insert

@mernst mernst linked a pull request Feb 6, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant