Statistics
| Revision:

svn-gvsig-desktop / tags / v2_0_0_Build_2065 / build / ant-tasks / maven-goals.xml @ 40275

History | View | Annotate | Download (7.03 KB)

1
<project name="gvSIG-maven-goals" default="mvn-install">
2

    
3
        <dirname property="gvSIG-maven-goals.basedir" 
4
                file="${ant.file.gvSIG-maven-goals}" />
5
        <import file="${gvSIG-maven-goals.basedir}/ant-tasks-config.xml" />
6
        <import file="${gvSIG-maven-goals.basedir}/eclipse-tasks.xml" />
7

    
8
        <description>
9
                Ant tasks and macros to interact with maven
10
        </description>
11

    
12
        <target name="mvn-clean" description="Cleans all artifacts">
13
                <maven arg="clean" />
14
        </target>
15

    
16
        <target name="mvn-compile" description="Compiles all source code">
17
        <svn><info path=".."/></svn>
18
        <echo>svn: ${svn.info.repositoryRootUrl} rev ${svn.info.revision}</echo>
19
                <maven arg="compile" />
20
        </target>
21

    
22
        <target name="mvn-test" description="Launches unit tests">
23
                <maven arg="test" />
24
        </target>
25

    
26
        <target name="mvn-install" description="Compiles and installs">
27
        <svn><info path=".."/></svn>
28
        <echo>svn: ${svn.info.repositoryRootUrl} rev ${svn.info.revision}</echo>
29
                <maven arg="install" />
30
        </target>
31

    
32
    <target name="mvn-create-installer" 
33
        description="Compiles and generates an installer if the project is a gvSIG plugin">
34
        <maven arg="-P create-installer install" />
35
    </target>
36
        
37
    <target name="mvn-create-installer-linux" description="Compiles and generates an installer for linux, if the plugin uses native libraries">
38
            <maven.lin arg="-P create-installer install" />
39
    </target>
40

    
41
    <target name="mvn-create-installer-windows" description="Compiles and generates an installer for windows, if the plugin uses native libraries">
42
        <maven.win arg="-P create-installer install" />
43
    </target>
44

    
45
        <target name="mvn-install-ignore-tests" description="Compiles and installs and ignore tests">
46
        <svn><info path=".."/></svn>
47
        <echo>svn: ${svn.info.repositoryRootUrl} rev ${svn.info.revision}</echo>
48
                <maven arg="install -Dmaven.test.failure.ignore" />
49
        </target>
50
        
51
        <target name="mvn-install-without-tests"
52
                description="Compiles and installs without launching tests">
53
        <svn><info path=".."/></svn>
54
        <echo>svn: ${svn.info.repositoryRootUrl} rev ${svn.info.revision}</echo>
55
                <maven arg="-Dmaven.test.skip=true install" />
56
        </target>
57

    
58
        <target name="mvn-reinstall" 
59
                description="Performs a clean install">
60
        <svn><info path=".."/></svn>
61
        <echo>svn: ${svn.info.repositoryRootUrl} rev ${svn.info.revision}</echo>
62
                <maven arg="clean install" />
63
        </target>
64

    
65
        <target name="mvn-reinstall-without-tests"
66
                description="Performs a clean install without launching tests">
67
        <svn><info path=".."/></svn>
68
        <echo>svn: ${svn.info.repositoryRootUrl} rev ${svn.info.revision}</echo>
69
                <maven arg="-Dmaven.test.skip=true clean install" />
70
        </target>
71

    
72
   <target name="mvn-dependency-tree" 
73
        description="Creates a text tree with the project dependencies">
74
        <maven arg="dependency:tree" />
75
    </target>
76

    
77
        <target name="mvn-deploy" 
78
                description="Compiles, installs and deploys">
79
                <maven arg="deploy" />
80
        </target>
81

    
82
    <target name="release.get.params">
83
        <!-- Default values -->
84
        <property name="svn.username" value="${user.name}"/>
85

    
86
        <property name="svn.tag" value=""/>
87
        <propertyregex property="svn.tag" input="${svn.tag}"
88
            regexp="(.*)-SNAPSHOT" select="\1" casesensitive="false" override="true" />
89

    
90
        <antform title="Release parameters" image="${gvsiglogo}" resetMessage="Cancel"
91
            previousTarget="cancel">
92

    
93
            <label>Set the values needed to perform the release.</label>
94

    
95
            <textProperty label="SVN user name: " property="svn.username"
96
                password="false" />
97
            <textProperty label="SVN user password: " property="svn.password"
98
                password="true" />
99
            <textProperty label="SVN tag: " property="svn.tag"
100
                password="false" />
101
            <textProperty label="Next development version: " 
102
                property="developmentVersion"
103
                password="false" />
104
            <label>
105
Note:
106
   Don't include the suffix "-SNAPSHOT" in the development version, 
107
   it will be automatically included where needed.
108
            </label>
109
        </antform>
110
    </target>
111

    
112
    <target name="mvn-release-prepare-perform" depends="release.get.params" description="Prepares and performs (tag, version upgrade and deploys) a new release of the project">
113
        <echo>mvn release:clean release:prepare release:perform -DpreparationGoals='clean install' -Dusername=${svn.username} -Dpassword=******* -Dtag=${svn.tag} -DdevelopmentVersion=${developmentVersion}-SNAPSHOT</echo>
114
        <maven arg="release:clean release:prepare release:perform -DpreparationGoals='clean install' -Dusername=${svn.username} -Dpassword=${svn.password} -Dtag=${svn.tag} -DdevelopmentVersion=${developmentVersion}-SNAPSHOT" />
115
    </target>
116

    
117
    <target name="mvn-release-prepare-dry-run" depends="release.get.params" description="Performs a dry run (does not perform the real release) of a new release of the project">
118
        <echo>mvn release:clean release:prepare -DdryRun=true -DpreparationGoals='clean install' -Dtag=${svn.tag} -DdevelopmentVersion=${developmentVersion}-SNAPSHOT</echo>
119
        <maven arg="release:clean release:prepare -DdryRun=true -Dtag=${svn.tag} -DdevelopmentVersion=${developmentVersion}-SNAPSHOT" />
120
    </target>
121
    
122
    <target name="mvn-release-clean" description="Cleans all files created by the release-prepare* targets">
123
        <maven arg="release:clean" />
124
    </target>
125

    
126
        <target name="mvn-configure-eclipse-workspace"
127
                description="Configures the eclipse workspace for maven integration">
128

    
129
                <input message="Eclipse workspace folder to configure?:" 
130
                        addproperty="eclipse.workspace"
131
                        defaultvalue="${workspace_loc}" />
132

    
133
                <maven arg="-Declipse.workspace='${eclipse.workspace}' eclipse:add-maven-repo" />
134
                <mkdir dir="${eclipse.workspace}/.metadata/.plugins/org.eclipse.ui.workbench" />
135
                <copy
136
                        file="${build.folder}/metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml"
137
                        todir="${eclipse.workspace}/.metadata/.plugins/org.eclipse.ui.workbench" />
138
        </target>
139

    
140
        <target name="mvn-eclipse-clean"
141
                description="Cleans the maven generated eclipse project files">
142
                <maven arg="eclipse:clean" />
143
        </target>
144

    
145
        <!-- Replaced by the target eclipse.project in eclipse-tasks.xml -->
146
        <!--
147
        <target name="mvn-eclipse-eclipse"
148
                description="Generates an eclipse project configuration from the pom.xml">
149
                <maven arg="eclipse:eclipse" />
150
        </target>
151
        -->        
152
        <target name="mvn-eclipse-eclipse"
153
                description="Generates an eclipse project configuration from the pom.xml">
154
                <maven arg="-P eclipse-project" />
155
        </target>
156
        
157
        <target name="mvn-site"
158
                description="Generates the project site documentation">
159
                <maven arg="site" />
160
        </target>
161
    
162
    <target name="mvn-any" 
163
        description="Asks for the parameters to launch maven with">
164
        <antform title="Launch maven" image="${gvsiglogo}" resetMessage="Cancel"
165
                    previousTarget="cancel">
166
            <textProperty label="mvn " property="mvn.parameters"
167
                password="false" />
168
        </antform>
169
        <maven arg="${mvn.parameters}" />
170
    </target>
171

    
172
</project>