Ah yes, thank you. I see the job name is used as a directory name, so I change it.
Still I got the problem, so I managed to solve this, with the following experiences along the way.
- The default goals for Jenkins maven is not "clean install", after adding these goals, I could see the real cause of the problem, which as a compilation problem, for a missing dependency.
- The dependency is optional, and interrestingly enough it compiles om my local box, but not on my build server. Before, I added this setting in the root POM, to avoid compilation problems for dependencies, I really didn't want in the build:
<dependency-resolution>
<optionalDependencies>ignore</optionalDependencies>
</dependency-resolution>
But now, I have a dependency which is also optional, but I do want to compile with.
So my question is:
- Why does it compile the same pom.xml structure on one machine, but not the other, it seems related to the missing dependency which is optional? Eclipse, behaves like this. If the dependency is optional, but available in the target or workspace it will be included, if it's not it won't. Tycho seems to say, if it's optional we must include it, unless the parameter says ignore. How do I deal with an appearantly conflicting requirement? (The work around, it not to make the plugins optional, but that is kind of rough). I would expect a different behaviour at compile vs runtime. So at compile, you need it as, the code will have import to the optional dep. At runtime, you won't.