Comments (11)
I'm closing this now. Any new issues regarding Java 9 incompatibilities please into new tickets.
from spotbugs.
The crudest thing you could do that would work would probably be to probe for java.lang.reflect.Module
using Class#forName
, and to interact with it using reflection if you manage to find it. You could also speed up the reflective calls to a heavily used method by obtaining a MethodHandle
.
from spotbugs.
This is known issue and we handle this in #101.
Simply speaking SpotBugs and many other bytecode manipulating library such as javaassist don't work with jigsaw currently.
In theory we can support it iff we use Module class provided from Java9. It means that we need to compile SpotBugs with JDK9. However we also wants to support Java8 users. Maybe this is possible by MRJAR I hope.
from spotbugs.
@rschmitt Great, thanks for your information!
from spotbugs.
Is the issue that Spotbugs is not using the jrt file system to locate the system classes? At one point I think Andrey Loskutov has this implemented in FindBugs.
from spotbugs.
Yep, I did it once for one of the earlier JDK 9 betas: 9e10194
So this isn't working now? Bad.
from spotbugs.
Probably due https://bugs.openjdk.java.net/browse/JDK-8169816
from spotbugs.
Anyway, I've just tried with jdk-9+178_linux-x64 version and spotbugs works out of the box if the JVM is started with --add-modules=ALL-SYSTEM
.
from spotbugs.
I plan to close this one with #271.
Everyone who test Java 9 and SpotBugs should use both in the latest versions, and also add --add-modules=ALL-SYSTEM
argument to the JVM to start SpotBugs.
from spotbugs.
Why is --add-modules=ALL-SYSTEM
needed? If this is because of dependences on the EE modules then keep in mind that they have been deprecated-for-removal and will (hopefully) be dropped in the future.
from spotbugs.
I haven't further investigated this, it worked and I was just happy. May be because of javax namespace of JSR-305 annotations? I have tested from Eclipse, because this is the easiest way for me. May be without both (Eclipse and args) it would also work.
from spotbugs.
Related Issues (20)
- Crash in Sonarqube analysis HOT 5
- `DLS_DEAD_LOCAL_STORE` false positives for Hibernate enhanced entities HOT 1
- Treat `@PostConstruct` methods as constructors for `UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR` HOT 1
- DLS_DEAD_LOCAL_STORE issue in Java 21 with pattern matching HOT 2
- Eclipse plug-in: false warning about not built project? HOT 1
- Nullness check FPs and FNs
- False positive: UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS HOT 1
- add an alternate version of EI_EXPOSE_REP HOT 4
- Rank value mismatch with the actual reported value HOT 2
- is it possible to make variable for checksyle version to let me run somthing like HOT 1
- update xsd namespace versions
- GHA for 4.8.4 on release failed to produce changelog. HOT 22
- Getting com.intellij.diagnostic.PluginException Randomly in the IntelliJ Plugin HOT 1
- False positive SING_SINGLETON_GETTER_NOT_SYNCHRONIZED with eager instances HOT 2
- False positive SING_SINGLETON_IMPLEMENTS_SERIALIZABLE with readResolve() present HOT 3
- False positive SING_SINGLETON_HAS_NONPRIVATE_CONSTRUCTOR with reused instances HOT 7
- SE_BAD_FIELD with records and spotbugs-4.8.4 HOT 4
- False Positive: IL_INFINITE_LOOP HOT 6
- Prefix matching behavior of SuppressFBWarnings makes it impossible to suppress just one warning HOT 2
- DataflowAnalysisException in 4.7.3 and 4.8.3 HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from spotbugs.