diff --git a/java/lib/com/google/protobuf/protobuf-java/2.6.1/protobuf-java-2.6.1.jar b/java/lib/com/google/protobuf/protobuf-java/2.6.1/protobuf-java-2.6.1.jar
deleted file mode 100644
index 669e67281..000000000
Binary files a/java/lib/com/google/protobuf/protobuf-java/2.6.1/protobuf-java-2.6.1.jar and /dev/null differ
diff --git a/java/lib/com/google/protobuf/protobuf-java/2.6.1/protobuf-java-2.6.1.pom b/java/lib/com/google/protobuf/protobuf-java/2.6.1/protobuf-java-2.6.1.pom
deleted file mode 100644
index a9f88e001..000000000
--- a/java/lib/com/google/protobuf/protobuf-java/2.6.1/protobuf-java-2.6.1.pom
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
- 4.0.0
- com.google.protobuf
- protobuf-java
- 2.6.1
- POM was created from install:install-file
-
diff --git a/java/lib/com/google/protobuf/protobuf-java/maven-metadata-local.xml b/java/lib/com/google/protobuf/protobuf-java/maven-metadata-local.xml
deleted file mode 100644
index fdb85172a..000000000
--- a/java/lib/com/google/protobuf/protobuf-java/maven-metadata-local.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
- com.google.protobuf
- protobuf-java
-
- 2.6.1
-
- 2.6.1
-
- 20151102180249
-
-
diff --git a/java/lib/protobuf-javanano-3.0.0-alpha-7.jar b/java/lib/protobuf-javanano-3.0.0-alpha-7.jar
new file mode 100644
index 000000000..c5aa8a1e6
Binary files /dev/null and b/java/lib/protobuf-javanano-3.0.0-alpha-7.jar differ
diff --git a/java/lib/protobuf-javanano-readme.md b/java/lib/protobuf-javanano-readme.md
new file mode 100644
index 000000000..fee2b8f67
--- /dev/null
+++ b/java/lib/protobuf-javanano-readme.md
@@ -0,0 +1,20 @@
+Steps to update the protobuf library version:
+
+- Start by finding a protobuf library version released to Maven Central that has functionality you
+ need, e.g. nano. See http://mvnrepository.com/artifact/com.google.protobuf.
+- Update the protobuf library dependency's `groupId`, `artifactId`, and `version` to match this
+ artifact in all the `pom.xml` files. You can find the files by searching for
+ `com.google.protobuf` in the GitHub repository.
+- Download the `.jar` from the Maven Repository,
+ e.g. from http://repo1.maven.org/maven2/com/google/protobuf/nano/protobuf-javanano/3.0.0-alpha-7/,
+ and copy to `java/lib/`, replacing the previous version's `.jar`.
+- See https://github.com/google/protobuf/releases for the release containing the chosen version, and
+ download the `protoc` binary for your machine's architecture from the same release and use this to
+ re-generate `java/libphonenumber/src/com/google/i18n/phonenumbers/nano/Phonemetadata.java` and
+ check in any changes to this file. The command from the root directory is:
+
+ ```
+ protoc --javanano_out=com.google.i18n.phonenumbers.nano:java/libphonenumber/src \
+ resources/phonemetadata.proto \
+ --proto_path=resources
+ ```
diff --git a/java/libphonenumber/pom.xml b/java/libphonenumber/pom.xml
index 9c9b9a262..30774ce95 100644
--- a/java/libphonenumber/pom.xml
+++ b/java/libphonenumber/pom.xml
@@ -29,28 +29,6 @@
-
- maven-shade-plugin
- 2.4.2
-
-
- package
-
- shade
-
-
-
-
- com.google.protobuf
-
- com.google.i18n.phonenumbers.repackaged.com.google.protobuf
-
-
-
-
-
-
-
org.codehaus.mojo
animal-sniffer-maven-plugin
@@ -74,17 +52,12 @@
-
-
- protobuf-java-lib
- file://${project.basedir}/../lib
-
-
- com.google.protobuf
- protobuf-java
- 2.6.1
+ com.google.protobuf.nano
+ protobuf-javanano
+
+ 3.0.0-alpha-7
diff --git a/java/pending_code_changes.txt b/java/pending_code_changes.txt
index 6efad85da..ae70f7e73 100644
--- a/java/pending_code_changes.txt
+++ b/java/pending_code_changes.txt
@@ -1,3 +1,5 @@
- Deleted unsupported SingleFilePhoneNumberMetadataProto.
Code changes:
- Refactored metadata loading and closed all streams after loading.
+Build changes:
+ - Use protobuf-javanano 3.0.0-alpha-7 from Maven Central.
diff --git a/tools/java/common/pom.xml b/tools/java/common/pom.xml
index 14beba550..10797bc28 100644
--- a/tools/java/common/pom.xml
+++ b/tools/java/common/pom.xml
@@ -51,12 +51,6 @@
-
-
- protobuf-java-lib
- file://${project.basedir}/../../../java/lib
-
-
junit
@@ -65,9 +59,10 @@
test
- com.google.protobuf
- protobuf-java
- 2.6.1
+ com.google.protobuf.nano
+ protobuf-javanano
+
+ 3.0.0-alpha-7
diff --git a/tools/java/cpp-build/pom.xml b/tools/java/cpp-build/pom.xml
index 0f2fb6677..05176f450 100644
--- a/tools/java/cpp-build/pom.xml
+++ b/tools/java/cpp-build/pom.xml
@@ -54,28 +54,6 @@
-
-
- org.codehaus.mojo
- exec-maven-plugin
- 1.4.0
-
-
- generate-sources
-
- exec
-
-
-
-
- protoc
-
- --javanano_out=java_package=phonemetadata.proto|com.google.i18n.phonenumbers.nano:../../../java/libphonenumber/src
- ../../../resources/phonemetadata.proto
- --proto_path=../../../resources
-
-
-
org.apache.maven.plugins
maven-jar-plugin
@@ -118,12 +96,6 @@
-
-
- protobuf-java-lib
- file://${project.basedir}/../../../java/lib
-
-
junit
@@ -132,9 +104,10 @@
test
- com.google.protobuf
- protobuf-java
- 2.6.1
+ com.google.protobuf.nano
+ protobuf-javanano
+
+ 3.0.0-alpha-7
diff --git a/tools/java/cpp-build/target/cpp-build-1.0-SNAPSHOT-jar-with-dependencies.jar b/tools/java/cpp-build/target/cpp-build-1.0-SNAPSHOT-jar-with-dependencies.jar
index d96eb40b2..dd3d7efac 100644
Binary files a/tools/java/cpp-build/target/cpp-build-1.0-SNAPSHOT-jar-with-dependencies.jar and b/tools/java/cpp-build/target/cpp-build-1.0-SNAPSHOT-jar-with-dependencies.jar differ
diff --git a/tools/java/java-build/pom.xml b/tools/java/java-build/pom.xml
index 3caa92261..665504bc8 100644
--- a/tools/java/java-build/pom.xml
+++ b/tools/java/java-build/pom.xml
@@ -103,12 +103,6 @@
-
-
- protobuf-java-lib
- file://${project.basedir}/../../../java/lib
-
-
junit
@@ -117,9 +111,10 @@
test
- com.google.protobuf
- protobuf-java
- 2.6.1
+ com.google.protobuf.nano
+ protobuf-javanano
+
+ 3.0.0-alpha-7
diff --git a/tools/java/java-build/target/java-build-1.0-SNAPSHOT-jar-with-dependencies.jar b/tools/java/java-build/target/java-build-1.0-SNAPSHOT-jar-with-dependencies.jar
index 767d62ca0..6b3d054ba 100644
Binary files a/tools/java/java-build/target/java-build-1.0-SNAPSHOT-jar-with-dependencies.jar and b/tools/java/java-build/target/java-build-1.0-SNAPSHOT-jar-with-dependencies.jar differ