On Wed, 2016-01-27 at 15:08 +0100, Andreas Tille wrote: > Reading "<goal>compile</goal>" and "<goal>link</goal>" would tell me > that these are not needed only for testing, right? Don't confused <goal/> with <phase/>. Goals are named subroutines from the plugin. Phases are standard Maven names. If you prefer, goals tell Maven what to use and phases tells it when to build. Check out the build lifecycle [1] for more info. All of the test-y phases have `test` in their name. Goals can also automatically bind to phases if <phase/> is omitted, in which case you'd have to check the plugin documentation to see exactly which phase its bound to. It pretty safe to say the `compile` goal of the maven-scala-plugin binds to the compile phase, so this plugin is needed (it's just coincidence they are named the same). As for the maven-junction-plugin, it's phase is set to none. So the plugin won't be used regardless of it listing the `link` goal. You just have to be careful that profile activations or other configuration don't change that phase on you, then it may actually be needed (config is merged). > Just to make sure I'm > heading in the right direction: > > scala: https://github.com/davidB/scala-maven-plugin > (this seems to be outdated: http://scala-tools.org/mvnsites/maven- > scala-plugin/) The one from scala-tools.org may appear to be outdated, but it is the plugin that's used. The one from github has a different groupId which means it could be a fork, a rewrite or something completely different. It may be easier to stick with plugin that was actually used otherwise you'd have to maintain that change. Andrew [1] https://maven.apache.org/guides/introduction/introduction-to-the-li fecycle.html
Attachment:
signature.asc
Description: This is a digitally signed message part