在学习《基于Travis CI搭建Android自动打包发布工作流》时遇到个问题。
步骤都是按照文章中的来的,命令行是自动生成的,网页上也自动生成了环境变量,对密钥进行解密时,遇到下面的报错问题。
$ java -Xmx32m -version
java version "1.7.0_76"
Java(TM) SE Runtime Environment (build 1.7.0_76-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.76-b04, mixed mode)
$ javac -J-Xmx32m -version
javac 1.7.0_76
$ openssl aes-256-cbc -K $encrypted_d3d6449b1a56_key -iv $encrypted_d3d6449b1a56_iv -in abcd.jks.enc -out abcd.jks -d
bad decrypt
140307727189664:error:0606506D:digital envelope routines:EVP_DecryptFinal_ex:wrong final block length:evp_enc.c:532:
The command "openssl aes-256-cbc -K $encrypted_d3d6449b1a56_key -iv $encrypted_d3d6449b1a56_iv -in abcd.jks.enc -out abcd.jks -d" failed and exited with 1 during .
Your build has been stopped.
重新生成jks文件,试了很多方法,但问题仍然存在。
认真看了下官方文档,里面Encrypting Files下面这句话
Caveat
There is a report of this function not working on a local Windows machine. Please use a Linux or OS X machine.
windows不支持这个功能,请使用Linux或者OS X。
我也用linux实际验证了一下,加密文件的时候,生成.enc文件时,在线解密的时候的确不会报错。
希望大家能如下面一样
BUILD SUCCESSFUL