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

Maven install fails when using Java 9 #3

Open
MartinBenninger opened this issue Dec 7, 2017 · 5 comments
Open

Maven install fails when using Java 9 #3

MartinBenninger opened this issue Dec 7, 2017 · 5 comments
Assignees

Comments

@MartinBenninger
Copy link
Member

Running mvn install in the repository folder results in a load of errors.
It's possible that these errors are caused by my environment and not the package itself. But since I followed all the instructions in the readme and have tried for a while to solve this without success, I'm posting it here anyway.
I'm running from Windows 10 x64 with the Java 9.0.1 jdk installed.
I've attached a file with the output that I get from running mvn install
log.txt

Is there anything else that I need to configure or install? Do you need any additional information from me?

I'm a bit stuck here so thanks in advance for any help.

@SBI- SBI- self-assigned this Dec 8, 2017
@SBI-
Copy link
Member

SBI- commented Dec 8, 2017

I can reproduce the problems regardless of operating system. Build works fine using Java 8, but blows up completely using Java 9. I'm not quite sure what the problem exactly is because I've not had any issues using Java 9 with other projects. I suspect a problem might be the tycho-compiler-plugin, which I suspect is still being built using Java 8. The only real solution I have for now is to always use Java 8 when working on jazz plugins.

Can you do me a favor and try again using Java 8, to verify that this really is the issue? (And reboot between different installations, maven seems to cache certain paths).

All projects are currently written to source level 1.7, and also compile to 1.7. So far, compiling for Java 7 using Java 8 has never posed a problem, so I'm also quite puzzled right now.

@MartinBenninger
Copy link
Member Author

Thanks for your help. I finally managed to build it using Java 8.

I already tried this yesterday but since I had multiple versions of Java installed it was a bit of a mess. Just setting the JAVA_HOME environment variable didn't change the version used by maven. I found out that the PATH env variable was pointing to a different version 🙄

Anyway, I'll just use Java 8 for now.

@MartinBenninger MartinBenninger changed the title Maven install fails Maven install fails when using Java 9 Dec 8, 2017
@SBI-
Copy link
Member

SBI- commented Dec 8, 2017

I'm really glad we caught this. What you describe is exactly what has never made me trip over this. I've never cared too much about which Java versions I use to build as long as everything works, so my maven was still using the Java 8 binaries when I was actually using Java 9 (without actually using any Java 9 features, which is probably the real mistake here). To reproduce everything I cleaned all Java binaries first and tried individually. Ubuntu's update-alternatives was a boon reproducing the errors, but it hadn't previously occurred to me that the plugin binaries could be a problem, and none had caused any trouble so far. Usually, trying to build with wrong binaries will fail early with 'real' errors.

Maybe we should work on some kind of binary detection mechanism to work around this problem until we actually know what's going on. Thanks a lot for your help. I will open a new issue concerning Java 9 binaries once I've circled in on what might actually be causing problems.

Also, IntelliJ seems to respect the pom more than maven does, because builds in the IDE never failed, even with the 'wrong' system binary. I guess IntelliJ has a more elaborate detection mechanism to find installed jdks, and will then compile to the closest match. Or builds from IntelliJ are always against the IntelliJ SDK that comes with the distribution. Which makes sense, but ignores configuration. Either way, we need to be careful.

@SBI-
Copy link
Member

SBI- commented May 29, 2018

Tycho has since received an update to 1.1.0 which supports building with and against Java 9. We should probably retry our builds with this new version to see if problems have since been solved.

@innerjoin
Copy link
Contributor

This might indeed work. As it is always good practice to stick with and upgrade to latest stable releases, we should definitely give it a try

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants