huangcm
2025-04-11 9871d522be7037db6670d22c28feb398699c03cc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
How to recreate this JAR
 
=========================================================
 
Download the latest google-api-java-client library from 
https://developers.google.com/api-client-library/java/google-api-java-client/download
 
Download jarjar from 
https://code.google.com/p/jarjar/
 
Install Apache Ant (if not already installed)
 
=========================================================
 
Create the following directory structure
 
base/
 |-- jars/
 |-- lib/
 \-- build.xml
 
=========================================================
 
Put the jarjar-<version>.jar in base/lib
 
Extract and place the .jar files from the client lib you want in base/jars
for 1.23.0 we
 
INCLUDED
+ commons-logging-1.1.1.jar
+ google-api-client-1.23.0.jar
+ google-api-client-jackson2-1.23.0.jar
+ google-api-client-java6-1.23.0.jar
+ google-http-client-1.23.0.jar
+ google-http-client-jackson2-1.23.0.jar
+ google-oauth-client-1.23.0.jar
+ google-oauth-client-java6-1.23.0.jar
+ google-oauth-client-jetty-1.23.0.jar
+ httpclient-4.0.1.jar
+ httpcore-4.0.1.jar
+ jackson-core-2.1.3.jar
+ jetty-6.1.26.jar
+ jetty-util-6.1.26.jar
+ jsr305-1.3.9.jar
 
and EXCLUDED
- google-api-client-android-1.23.0.jar
- google-api-client-appengine-1.23.0.jar
- google-api-client-gson-1.23.0.jar
- google-api-client-protobuf-1.23.0.jar
- google-api-client-servlet-1.23.0.jar
- google-api-client-xml-1.23.0.jar
- google-http-client-android-1.23.0.jar
- google-http-client-appengine-1.23.0.jar
- google-http-client-gson-1.23.0.jar
- google-http-client-jackson-1.23.0.jar
- google-http-client-jdo-1.23.0.jar
- google-http-client-protobuf-1.23.0.jar
- google-http-client-xml-1.23.0.jar
- google-oauth-client-appengine-1.23.0.jar
- google-oauth-client-servlet-1.23.0.jar
- guava-jdk5-17.0.jar
- gson-2.1.jar
- jackson-core-asl-1.9.11.jar
- jdo2-api-2.3-eb.jar
- protobuf-java-2.6.1.jar
- transaction-api-1.1.jar
- xpp3-1.1.4c.jar
 
=========================================================
 
create a build.xml 
 
<project name="gapiRepackage">
    <target name="jar">
        <taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask" classpath="lib/jarjar-1.4.jar"/>
        <jarjar jarfile="dist/google-api-java-client-min-repackaged-1.20.0.jar">
            <zipgroupfileset dir="jars" includes="*.jar"/>
            <rule pattern="org.apache.**" result="com.google.api.client.repackaged.@0"/>
            <rule pattern="com.google.gson.**" result="com.google.api.client.repackaged.@0"/>
            <rule pattern="com.google.protobuf.**" result="com.google.api.client.repackaged.@0"/>
            <rule pattern="com.fasterxml.**" result="com.google.api.client.repackaged.@0"/>
            <rule pattern="org.codehaus.**" result="com.google.api.client.repackaged.@0"/>
            <rule pattern="org.mortbay.**" result="com.google.api.client.repackaged.@0"/>
            <rule pattern="org.xmlpull.**" result="com.google.api.client.repackaged.@0"/>
            <rule pattern="javax.annotation.**" result="com.google.api.client.repackaged.@0"/>
            <rule pattern="javax.xml.**" result="com.google.api.client.repackaged.@0"/>
        </jarjar>
    </target>
</project>
 
=========================================================
 
run "ant jar" to create a combined, reduced, repackaged jar.
it will be found as base/dist/google-api-java-client-min-repackaged-1.20.0.jar