jarsigner错误:java.time.DateTimeException:MonthOfYear的值无效(有效值1-12):0
我在签署Ionic android apk时遇到这个错误,我使用Kubuntu 17.04,安装了Ionic 3和java 8 我得到的错误是:jarsigner错误:java.time.DateTimeException:MonthOfYear的值无效(有效值1-12):0,java,android,linux,ubuntu,ionic-framework,Java,Android,Linux,Ubuntu,Ionic Framework,我在签署Ionic android apk时遇到这个错误,我使用Kubuntu 17.04,安装了Ionic 3和java 8 我得到的错误是: Enter Passphrase for keystore: updating: META-INF/MANIFEST.MF adding: META-INF/TEST2.SF adding: META-INF/TEST2.RSA signing: AndroidManifest.xml jarsigner error: java.time.DateT
Enter Passphrase for keystore:
updating: META-INF/MANIFEST.MF
adding: META-INF/TEST2.SF
adding: META-INF/TEST2.RSA
signing: AndroidManifest.xml
jarsigner error: java.time.DateTimeException: Invalid value for MonthOfYear (valid values 1 - 12): 0
java版本
$ java -version
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-8u131-b11-2ubuntu1.17.04.3-b11)
OpenJDK 64-Bit Server VM (build 25.131-b11, mixed mode)
爪哇语
我安装了Android Studio,它工作正常,我测试了应用程序源代码,它在模拟器上运行没有问题。这个问题可以在Debian 9上解决,方法是为jarsigner设置与java和javac版本相匹配的正确更新选项 java版本
$ java -version
openjdk version "1.8.0_141"
OpenJDK Runtime Environment (build 1.8.0_141-8u141-b15-1~deb9u1-b15)
OpenJDK 64-Bit Server VM (build 25.141-b15, mixed mode)
javac版本
$ javac -version
javac 1.8.0_141
jarsigner的版本
$ sudo update-alternatives --get-selections | grep jarsigner
jarsigner manual /usr/lib/jvm/java-8-openjdk-amd64/bin/jarsigner
$ sudo update-alternatives --config jarsigner
There are 4 choices for the alternative jarsigner (providing /usr/bin/jarsigner).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-9-openjdk-amd64/bin/jarsigner 1091 auto mode
1 /usr/bin/gjarsigner-4.9 1049 manual mode
2 /usr/bin/gjarsigner-6 1060 manual mode
* 3 /usr/lib/jvm/java-8-openjdk-amd64/bin/jarsigner 1081 manual mode
4 /usr/lib/jvm/java-9-openjdk-amd64/bin/jarsigner 1091 manual mode
设置jarsigner的版本
$ sudo update-alternatives --get-selections | grep jarsigner
jarsigner manual /usr/lib/jvm/java-8-openjdk-amd64/bin/jarsigner
$ sudo update-alternatives --config jarsigner
There are 4 choices for the alternative jarsigner (providing /usr/bin/jarsigner).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-9-openjdk-amd64/bin/jarsigner 1091 auto mode
1 /usr/bin/gjarsigner-4.9 1049 manual mode
2 /usr/bin/gjarsigner-6 1060 manual mode
* 3 /usr/lib/jvm/java-8-openjdk-amd64/bin/jarsigner 1081 manual mode
4 /usr/lib/jvm/java-9-openjdk-amd64/bin/jarsigner 1091 manual mode
我也犯了同样的错误。但是我的java版本是9.0.1,在将jdk版本切换到1.8.xx之后,错误消失了。
因此,更改jdk版本可能会解决此问题。您是否能够修复此问题?我在版本9中遇到了相同的问题,在更新到10后,问题消失了。在这里,您可以找到如何安装/更新版本10或更高版本: