wouterhardeman / play2-maven-plugin

Automatically exported from code.google.com/p/play2-maven-plugin
0 stars 0 forks source link

Make plugin Play 2.1.x and 2.2.x compatible #7

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
In Play! 2.2.0 many things changed (complete details later)

Original issue reported on code.google.com by gslowiko...@gmail.com on 20 Oct 2013 at 6:25

GoogleCodeExporter commented 8 years ago
Most important differences between Play! 2.1.x and 2.2.x:

- SBT version changed from 0.12 to 0.13 - one version of Zinc compiler cannot 
support both versions of SBT,
- Play! artifacts "groupId" changed from "play" in 2.1.x to "com.typesafe.play",
- Coffee, Javascript and Less compilers versions upgraded, code invoking them 
changed.

To support both 2.1.x and 2.2.x lines of Play! Framework "providers" are 
introduced.
Provider is a delegate. Providers for 2.1.x and 2.2.x have common interface - 
provider API, but different implementations with different dependencies.

Provider in injected to the plugin by adding it to plugin's dependencies:

- for Play! 2.1.x
            <plugin>
                <groupId>com.google.code.play2-maven-plugin</groupId>
                <artifactId>play2-maven-plugin</artifactId>
                <version>${play2.plugin.version}</version>
                <extensions>true</extensions>
                <dependencies>
                    <dependency>
                        <groupId>com.google.code.play2-maven-plugin</groupId>
                        <artifactId>play2-provider-play21</artifactId>
                        <version>${play2.plugin.version}</version>
                    </dependency>
                </dependencies>
            </plugin>

- for Play! 2.2.x
            <plugin>
                <groupId>com.google.code.play2-maven-plugin</groupId>
                <artifactId>play2-maven-plugin</artifactId>
                <version>${play2.plugin.version}</version>
                <extensions>true</extensions>
                <dependencies>
                    <dependency>
                        <groupId>com.google.code.play2-maven-plugin</groupId>
                        <artifactId>play2-provider-play22</artifactId>
                        <version>${play2.plugin.version}</version>
                    </dependency>
                </dependencies>
            </plugin>

Original comment by gslowiko...@gmail.com on 29 Oct 2013 at 9:53

GoogleCodeExporter commented 8 years ago
Implemented in:

http://code.google.com/p/play2-maven-plugin/source/detail?r=83
http://code.google.com/p/play2-maven-plugin/source/detail?r=84
http://code.google.com/p/play2-maven-plugin/source/detail?r=85

Test projects for Play! 2.2.x added in:

http://code.google.com/p/play2-maven-plugin/source/detail?r=90

Original comment by gslowiko...@gmail.com on 29 Oct 2013 at 9:57

GoogleCodeExporter commented 8 years ago
Some improvements:

http://code.google.com/p/play2-maven-plugin/source/detail?r=362 - some Java 
package names changed.
http://code.google.com/p/play2-maven-plugin/source/detail?r=365 - Play! 
provider autodetection mechanism implemented, adding provider's artifact to 
plugin's dependencies is optional now.
http://code.google.com/p/play2-maven-plugin/source/detail?r=366 - declared 
Play! providers removed from test projects, let autodetection mechanism work; 
additionally Play! 2.2.x projects upgraded from Play! 2.2.1 to 2.2.2 and some 
small bugs fixed.

Original comment by gslowiko...@gmail.com on 6 Apr 2014 at 7:57

GoogleCodeExporter commented 8 years ago
http://code.google.com/p/play2-maven-plugin/source/detail?r=376 - better 
classloader manipulation debug logs.
http://code.google.com/p/play2-maven-plugin/source/detail?r=377 - fixed bug 
with classloaders manipulation (removed classloader manipulation code copied 
from Play!'s PlayCommands.scala, it's not needed at all).

Original comment by gslowiko...@gmail.com on 6 Apr 2014 at 8:22