3 ms·
> My biggest complaint is that javac is unaware of the claspath restrictions. Do you mean that when you compile with javac you see non-exported packages? > in
by needusername 9y ago
> My biggest complaint is that javac is unaware of the claspath restrictions.
Do you mean that when you compile with javac you see non-exported packages?
> integration with maven was a pain
Were you using Tycho? Were you running in "manifest first" mode and were the issues related to resolving bundles?
> There are other issues with many of the tools.
Can you be more specific?
- bluejekyll 9y agoIt's been a while. I can't be much more specific. I remember I had a lot of trouble with tycho, so I gave up on that. I used the BND tool for generating all module manifests. In the end after successfully using OSGi for distribution, and guaranteeing module separation in a 250kloc project I led, I've decided that separate api and impl modules managed by maven are good enough, with lints to guard against Class.forName() shananegans. My point is: I personally worked really hard to make OSGi work, it was not fun, I'm sure I was doing something out of the norm, and I'm not a Java novice. So having something baked into the language and jdk would make this experience better. (I am not advocating for Jigsaw over OSGi, btw, just native language and tool support for a modularity).
- needusername 9y ago> In the end after successfully using OSGi for distribution, and guaranteeing module separation in a 250kloc project I led, I've decided that separate api and impl modules managed by maven are good enough, with lints to guard against Class.forName() shananegans. For a single application / project that is most often the case in my experience.