pom.xml revision 0eca14248fc14a12c5c8a6fc253bef6f58cc60c1
1<?xml version="1.0" encoding="UTF-8"?>
2<project xmlns="http://maven.apache.org/POM/4.0.0"
3  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
5  <modelVersion>4.0.0</modelVersion>
6  <parent>
7    <groupId>com.google</groupId>
8    <artifactId>google</artifactId>
9    <version>1</version>
10  </parent>
11  <groupId>com.google.protobuf</groupId>
12  <artifactId>protobuf-java</artifactId>
13  <version>2.3.0</version>
14  <packaging>jar</packaging>
15  <name>Protocol Buffer Java API</name>
16  <description>
17    Protocol Buffers are a way of encoding structured data in an efficient yet
18    extensible format.
19  </description>
20  <inceptionYear>2008</inceptionYear>
21  <url>http://code.google.com/p/protobuf</url>
22  <licenses>
23    <license>
24      <name>New BSD license</name>
25      <url>http://www.opensource.org/licenses/bsd-license.php</url>
26      <distribution>repo</distribution>
27    </license>
28  </licenses>
29  <scm>
30    <url>http://code.google.com/p/protobuf/source/browse</url>
31    <connection>
32      scm:svn:http://protobuf.googlecode.com/svn/trunk/
33    </connection>
34  </scm>
35  <dependencies>
36    <dependency>
37      <groupId>junit</groupId>
38      <artifactId>junit</artifactId>
39      <version>4.4</version>
40      <scope>test</scope>
41    </dependency>
42    <dependency>
43      <groupId>org.easymock</groupId>
44      <artifactId>easymock</artifactId>
45      <version>2.2</version>
46      <scope>test</scope>
47    </dependency>
48    <dependency>
49      <groupId>org.easymock</groupId>
50      <artifactId>easymockclassextension</artifactId>
51      <version>2.2.1</version>
52      <scope>test</scope>
53    </dependency>
54  </dependencies>
55  <build>
56    <plugins>
57      <plugin>
58        <artifactId>maven-compiler-plugin</artifactId>
59        <configuration>
60          <source>1.5</source>
61          <target>1.5</target>
62        </configuration>
63      </plugin>
64      <plugin>
65        <artifactId>maven-surefire-plugin</artifactId>
66        <configuration>
67          <includes>
68            <include>**/*Test.java</include>
69          </includes>
70        </configuration>
71      </plugin>
72      <plugin>
73        <artifactId>maven-antrun-plugin</artifactId>
74        <executions>
75          <execution>
76            <id>generate-sources</id>
77            <phase>generate-sources</phase>
78            <configuration>
79              <tasks>
80                <mkdir dir="target/generated-sources" />
81                <exec executable="/src/protoc">
82                  <arg value="--java_out=target/generated-sources" />
83                  <arg value="--proto_path=/src" />
84                  <arg value="/src/google/protobuf/descriptor.proto" />
85                </exec>
86              </tasks>
87              <sourceRoot>target/generated-sources</sourceRoot>
88            </configuration>
89            <goals>
90              <goal>run</goal>
91            </goals>
92          </execution>
93          <execution>
94            <id>generate-test-sources</id>
95            <phase>generate-test-sources</phase>
96            <configuration>
97              <tasks>
98                <mkdir dir="target/generated-test-sources" />
99                <!--mkdir dir="target/generated-test-sources/opt-space" /-->
100                <!--mkdir dir="target/generated-test-sources/opt-speed" /-->
101                <exec executable="/src/protoc">
102                  <arg value="--java_out=target/generated-test-sources" />
103                  <arg value="--proto_path=/src" />
104                  <arg value="--proto_path=src/test/java" />
105                  <arg value="/src/google/protobuf/unittest.proto" />
106                  <arg value="/src/google/protobuf/unittest_import.proto" />
107                  <arg value="/src/google/protobuf/unittest_mset.proto" />
108                  <arg
109                    value="src/test/java/com/google/protobuf/multiple_files_test.proto" />
110                  <arg
111                    value="/src/google/protobuf/unittest_optimize_for.proto" />
112                  <arg
113                    value="/src/google/protobuf/unittest_custom_options.proto" />
114                  <arg value="/src/google/protobuf/unittest_lite.proto" />
115                  <arg value="/src/google/protobuf/unittest_import_lite.proto" />
116                  <arg value="/src/google/protobuf/unittest_lite_imports_nonlite.proto" />
117                  <arg value="/src/google/protobuf/unittest_enormous_descriptor.proto" />
118                  <arg value="/src/google/protobuf/unittest_no_generic_services.proto" />
119                </exec>
120                <exec executable="/src/protoc">
121                  <arg value="--javamicro_out=opt=speed,java_use_vector=false,java_package=google/protobuf/unittest_import_micro.proto|com.google.protobuf.micro,java_outer_classname=google/protobuf/unittest_import_micro.proto|UnittestImportMicro:target/generated-test-sources" />
122                  <arg value="--proto_path=/src" />
123                  <arg value="--proto_path=src/test/java" />
124                  <arg value="/src/google/protobuf/unittest_micro.proto" />
125                  <arg value="/src/google/protobuf/unittest_simple_micro.proto" />
126                  <arg value="/src/google/protobuf/unittest_stringutf8_micro.proto" />
127                  <arg value="/src/google/protobuf/unittest_recursive_micro.proto" />
128                  <arg value="/src/google/protobuf/unittest_import_micro.proto" />
129                </exec>
130                <exec executable="/src/protoc">
131                  <arg value="--javanano_out=java_package=google/protobuf/unittest_import_nano.proto|com.google.protobuf.nano,java_outer_classname=google/protobuf/unittest_import_nano.proto|UnittestImportNano:target/generated-test-sources" />
132                  <arg value="--proto_path=/src" />
133                  <arg value="--proto_path=src/test/java" />
134                  <arg value="/src/google/protobuf/unittest_nano.proto" />
135                  <arg value="/src/google/protobuf/unittest_simple_nano.proto" />
136                  <arg value="/src/google/protobuf/unittest_stringutf8_nano.proto" />
137                  <arg value="/src/google/protobuf/unittest_recursive_nano.proto" />
138                  <arg value="/src/google/protobuf/unittest_import_nano.proto" />
139                  <arg value="/src/google/protobuf/unittest_enum_multiplejava_nano.proto" />
140                </exec>
141              </tasks>
142              <testSourceRoot>target/generated-test-sources</testSourceRoot>
143              <!--testSourceRoot>target/generated-test-sources/opt-space</testSourceRoot-->
144              <!--testSourceRoot>target/generated-test-sources/opt-speed</testSourceRoot-->
145            </configuration>
146            <goals>
147              <goal>run</goal>
148            </goals>
149          </execution>
150        </executions>
151      </plugin>
152    </plugins>
153  </build>
154  <profiles>
155    <profile>
156      <id>lite</id>
157      <build>
158        <plugins>
159          <plugin>
160            <artifactId>maven-compiler-plugin</artifactId>
161            <configuration>
162              <includes>
163                <include>**/AbstractMessageLite.java</include>
164                <include>**/ByteString.java</include>
165                <include>**/CodedInputStream.java</include>
166                <include>**/CodedOutputStream.java</include>
167                <include>**/ExtensionRegistryLite.java</include>
168                <include>**/FieldSet.java</include>
169                <include>**/GeneratedMessageLite.java</include>
170                <include>**/InvalidProtocolBufferException.java</include>
171                <include>**/Internal.java</include>
172                <include>**/MessageLite.java</include>
173                <include>**/UninitializedMessageException.java</include>
174                <include>**/WireFormat.java</include>
175              </includes>
176              <testIncludes>
177                <testInclude>**/LiteTest.java</testInclude>
178                <testInclude>**/*Lite.java</testInclude>
179              </testIncludes>
180            </configuration>
181          </plugin>
182          <plugin>
183            <artifactId>maven-surefire-plugin</artifactId>
184            <configuration>
185              <includes>
186                <include>**/LiteTest.java</include>
187              </includes>
188            </configuration>
189          </plugin>
190          <plugin>
191            <artifactId>maven-jar-plugin</artifactId>
192            <configuration>
193              <classifier>lite</classifier>
194            </configuration>
195          </plugin>
196        </plugins>
197      </build>
198    </profile>
199    <profile>
200      <id>micro</id>
201      <build>
202        <plugins>
203          <plugin>
204            <artifactId>maven-compiler-plugin</artifactId>
205            <configuration>
206              <includes>
207                <include>**/MessageMicro.java</include>
208                <include>**/ByteStringMicro.java</include>
209                <include>**/CodedInputStreamMicro.java</include>
210                <include>**/CodedOutputStreamMicro.java</include>
211                <include>**/InvalidProtocolBufferMicroException.java</include>
212                <include>**/WireFormatMicro.java</include>
213              </includes>
214              <testIncludes>
215                <testInclude>**/MicroTest.java</testInclude>
216                <testInclude>**/MicroOuterClass.java</testInclude>
217                <testInclude>**/SimpleMessageMicro.java</testInclude>
218                <testInclude>**/StringUtf8.java</testInclude>
219                <testInclude>**/RecursiveMessageMicro.java</testInclude>
220                <testInclude>**/UnittestImportMicro.java</testInclude>
221              </testIncludes>
222            </configuration>
223          </plugin>
224          <plugin>
225            <artifactId>maven-surefire-plugin</artifactId>
226            <configuration>
227              <includes>
228                <include>**/MicroTest.java</include>
229              </includes>
230            </configuration>
231          </plugin>
232          <plugin>
233            <artifactId>maven-jar-plugin</artifactId>
234            <configuration>
235              <classifier>micro</classifier>
236            </configuration>
237          </plugin>
238        </plugins>
239      </build>
240    </profile>
241    <profile>
242      <id>nano</id>
243      <build>
244        <plugins>
245          <plugin>
246            <artifactId>maven-compiler-plugin</artifactId>
247            <configuration>
248              <includes>
249                <include>**/MessageNano.java</include>
250                <include>**/CodedInputByteBufferNano.java</include>
251                <include>**/CodedOutputByteBufferNano.java</include>
252                <include>**/InternalNano.java</include>
253                <include>**/InvalidProtocolBufferNanoException.java</include>
254                <include>**/WireFormatNano.java</include>
255              </includes>
256              <testIncludes>
257                <testInclude>**/NanoTest.java</testInclude>
258                <testInclude>**/NanoOuterClass.java</testInclude>
259                <testInclude>**/SimpleMessageNano.java</testInclude>
260                <testInclude>**/StringUtf8.java</testInclude>
261                <testInclude>**/RecursiveMessageNano.java</testInclude>
262                <testInclude>**/UnittestImportNano.java</testInclude>
263              </testIncludes>
264            </configuration>
265          </plugin>
266          <plugin>
267            <artifactId>maven-surefire-plugin</artifactId>
268            <configuration>
269              <includes>
270                <include>**/NanoTest.java</include>
271              </includes>
272            </configuration>
273          </plugin>
274          <plugin>
275            <artifactId>maven-jar-plugin</artifactId>
276            <configuration>
277              <classifier>nano</classifier>
278            </configuration>
279          </plugin>
280        </plugins>
281      </build>
282    </profile>
283  </profiles>
284</project>
285