pom.xml revision 334a7d1117a576bc6010c14677fb6444639c1dda
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		<!-- java micro -->
121                <exec executable="/src/protoc">
122                  <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" />
123                  <arg value="--proto_path=/src" />
124                  <arg value="--proto_path=src/test/java" />
125                  <arg value="/src/google/protobuf/unittest_micro.proto" />
126                  <arg value="/src/google/protobuf/unittest_simple_micro.proto" />
127                  <arg value="/src/google/protobuf/unittest_stringutf8_micro.proto" />
128                  <arg value="/src/google/protobuf/unittest_recursive_micro.proto" />
129                  <arg value="/src/google/protobuf/unittest_import_micro.proto" />
130                  <arg value="/src/google/protobuf/unittest_single_micro.proto" />
131                  <arg value="/src/google/protobuf/unittest_multiple_micro.proto" />
132                  <arg value="/src/google/protobuf/unittest_multiple_nameclash_micro.proto" />
133                </exec>
134		<!-- java nano -->
135                <exec executable="/src/protoc">
136                  <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" />
137                  <arg value="--proto_path=/src" />
138                  <arg value="--proto_path=src/test/java" />
139                  <arg value="/src/google/protobuf/unittest_nano.proto" />
140                  <arg value="/src/google/protobuf/unittest_simple_nano.proto" />
141                  <arg value="/src/google/protobuf/unittest_stringutf8_nano.proto" />
142                  <arg value="/src/google/protobuf/unittest_recursive_nano.proto" />
143                  <arg value="/src/google/protobuf/unittest_import_nano.proto" />
144                  <arg value="/src/google/protobuf/unittest_single_nano.proto" />
145                  <arg value="/src/google/protobuf/unittest_multiple_nano.proto" />
146                  <arg value="/src/google/protobuf/unittest_multiple_nameclash_nano.proto" />
147                  <arg value="/src/google/protobuf/unittest_enum_class_nano.proto" />
148                  <arg value="/src/google/protobuf/unittest_repeated_merge_nano.proto" />
149                </exec>
150                <exec executable="/src/protoc">
151                  <arg value="--javanano_out=store_unknown_fields=true:target/generated-test-sources" />
152                  <arg value="--proto_path=/src" />
153                  <arg value="--proto_path=src/test/java" />
154                  <arg value="/src/google/protobuf/unittest_extension_nano.proto" />
155                </exec>
156                <exec executable="/src/protoc">
157                  <arg value="--javanano_out=java_nano_generate_has=true:target/generated-test-sources" />
158                  <arg value="--proto_path=/src" />
159                  <arg value="--proto_path=src/test/java" />
160                  <arg value="/src/google/protobuf/unittest_has_nano.proto" />
161                </exec>
162                <exec executable="/src/protoc">
163                  <arg value="--javanano_out=optional_field_style=accessors:target/generated-test-sources" />
164                  <arg value="--proto_path=/src" />
165                  <arg value="--proto_path=src/test/java" />
166                  <arg value="/src/google/protobuf/unittest_accessors_nano.proto" />
167                </exec>
168                <exec executable="/src/protoc">
169                  <arg value="--javanano_out=enum_style=java:target/generated-test-sources" />
170                  <arg value="--proto_path=/src" />
171                  <arg value="--proto_path=src/test/java" />
172                  <arg value="/src/google/protobuf/unittest_enum_class_nano.proto" />
173                  <arg value="/src/google/protobuf/unittest_enum_class_multiple_nano.proto" />
174                </exec>
175                <exec executable="/src/protoc">
176                  <arg value="--javanano_out=optional_field_style=reftypes:target/generated-test-sources" />
177                  <arg value="--proto_path=/src" />
178                  <arg value="--proto_path=src/test/java" />
179                  <arg value="/src/google/protobuf/unittest_reference_types_nano.proto" />
180                </exec>
181              </tasks>
182              <testSourceRoot>target/generated-test-sources</testSourceRoot>
183              <!--testSourceRoot>target/generated-test-sources/opt-space</testSourceRoot-->
184              <!--testSourceRoot>target/generated-test-sources/opt-speed</testSourceRoot-->
185            </configuration>
186            <goals>
187              <goal>run</goal>
188            </goals>
189          </execution>
190        </executions>
191      </plugin>
192    </plugins>
193  </build>
194  <profiles>
195    <profile>
196      <id>lite</id>
197      <build>
198        <plugins>
199          <plugin>
200            <artifactId>maven-compiler-plugin</artifactId>
201            <configuration>
202              <includes>
203                <include>**/AbstractMessageLite.java</include>
204                <include>**/ByteString.java</include>
205                <include>**/CodedInputStream.java</include>
206                <include>**/CodedOutputStream.java</include>
207                <include>**/ExtensionRegistryLite.java</include>
208                <include>**/FieldSet.java</include>
209                <include>**/GeneratedMessageLite.java</include>
210                <include>**/InvalidProtocolBufferException.java</include>
211                <include>**/Internal.java</include>
212                <include>**/MessageLite.java</include>
213                <include>**/UninitializedMessageException.java</include>
214                <include>**/WireFormat.java</include>
215              </includes>
216              <testIncludes>
217                <testInclude>**/LiteTest.java</testInclude>
218                <testInclude>**/*Lite.java</testInclude>
219              </testIncludes>
220            </configuration>
221          </plugin>
222          <plugin>
223            <artifactId>maven-surefire-plugin</artifactId>
224            <configuration>
225              <includes>
226                <include>**/LiteTest.java</include>
227              </includes>
228            </configuration>
229          </plugin>
230          <plugin>
231            <artifactId>maven-jar-plugin</artifactId>
232            <configuration>
233              <classifier>lite</classifier>
234            </configuration>
235          </plugin>
236        </plugins>
237      </build>
238    </profile>
239    <profile>
240      <id>micro</id>
241      <build>
242        <plugins>
243          <plugin>
244            <artifactId>maven-compiler-plugin</artifactId>
245            <configuration>
246              <includes>
247                <include>**/MessageMicro.java</include>
248                <include>**/ByteStringMicro.java</include>
249                <include>**/CodedInputStreamMicro.java</include>
250                <include>**/CodedOutputStreamMicro.java</include>
251                <include>**/InvalidProtocolBufferMicroException.java</include>
252                <include>**/WireFormatMicro.java</include>
253              </includes>
254              <testIncludes>
255                <testInclude>**/MicroTest.java</testInclude>
256                <testInclude>**/MicroOuterClass.java</testInclude>
257                <testInclude>**/SimpleMessageMicro.java</testInclude>
258                <testInclude>**/StringUtf8.java</testInclude>
259                <testInclude>**/RecursiveMessageMicro.java</testInclude>
260                <testInclude>**/UnittestImportMicro.java</testInclude>
261              </testIncludes>
262            </configuration>
263          </plugin>
264          <plugin>
265            <artifactId>maven-surefire-plugin</artifactId>
266            <configuration>
267              <includes>
268                <include>**/MicroTest.java</include>
269              </includes>
270            </configuration>
271          </plugin>
272          <plugin>
273            <artifactId>maven-jar-plugin</artifactId>
274            <configuration>
275              <classifier>micro</classifier>
276            </configuration>
277          </plugin>
278        </plugins>
279      </build>
280    </profile>
281    <profile>
282      <id>nano</id>
283      <build>
284        <plugins>
285          <plugin>
286            <artifactId>maven-compiler-plugin</artifactId>
287            <configuration>
288              <includes>
289                <include>**/MessageNano.java</include>
290                <include>**/CodedInputByteBufferNano.java</include>
291                <include>**/CodedOutputByteBufferNano.java</include>
292                <include>**/InternalNano.java</include>
293                <include>**/InvalidProtocolBufferNanoException.java</include>
294                <include>**/WireFormatNano.java</include>
295              </includes>
296              <testIncludes>
297                <testInclude>**/NanoTest.java</testInclude>
298                <testInclude>**/NanoOuterClass.java</testInclude>
299                <testInclude>**/SimpleMessageNano.java</testInclude>
300                <testInclude>**/StringUtf8.java</testInclude>
301                <testInclude>**/RecursiveMessageNano.java</testInclude>
302                <testInclude>**/UnittestImportNano.java</testInclude>
303              </testIncludes>
304            </configuration>
305          </plugin>
306          <plugin>
307            <artifactId>maven-surefire-plugin</artifactId>
308            <configuration>
309              <includes>
310                <include>**/NanoTest.java</include>
311              </includes>
312            </configuration>
313          </plugin>
314          <plugin>
315            <artifactId>maven-jar-plugin</artifactId>
316            <configuration>
317              <classifier>nano</classifier>
318            </configuration>
319          </plugin>
320        </plugins>
321      </build>
322    </profile>
323  </profiles>
324</project>
325