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