Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android studio 从Android Studio构建时使用修改的gradlew_Android Studio_Gradlew - Fatal编程技术网

Android studio 从Android Studio构建时使用修改的gradlew

Android studio 从Android Studio构建时使用修改的gradlew,android-studio,gradlew,Android Studio,Gradlew,我有一个Android应用程序,我正试图从命令行和Android Studio中构建它。作为定制的一部分,我修改了Studio自动创建的gradlew文件中的DEFAULT\u JVM\u OPTS。(具体来说,我添加了-Djavax.net.ssl.trustStore) 但是,我认为在Studio中运行时(例如,单击“运行”按钮),它们不会被拾取。如何在Studio中进行相同的修改?如果我可以在一个地方进行此更改,并且命令行构建和Studio构建都可以使用它,我会特别喜欢它 编辑:我找到了一

我有一个Android应用程序,我正试图从命令行和Android Studio中构建它。作为定制的一部分,我修改了Studio自动创建的
gradlew
文件中的
DEFAULT\u JVM\u OPTS
。(具体来说,我添加了
-Djavax.net.ssl.trustStore

但是,我认为在Studio中运行时(例如,单击“运行”按钮),它们不会被拾取。如何在Studio中进行相同的修改?如果我可以在一个地方进行此更改,并且命令行构建和Studio构建都可以使用它,我会特别喜欢它


编辑:我找到了一个解决方案(见下文),但这是一个解决方案,可能不适用于所有情况。如果有办法让Android Studio获取在
gradlew

中所做的更改,我会非常高兴。我已经能够通过在我的
build.gradle
中设置系统属性来解决这个问题,如下所示:


System.setProperty('javax.net.ssl.trustStore','.keystore')
System.setProperty('javax.net.ssl.trustStorePassword','changeit')

使用
~/.gradle/gradle.properties
文件指定
javax.net.ssl.trustStore
时,也存在同样的问题。Android Studio只是忽略了它。奇怪的是,如果您在Android Studio settings.interest中指定代理设置,它会很高兴地将代理设置存储在该文件中。最后,我不得不在运行时设置系统属性(请参见我的答案),结果非常好!这让我想到了如何“全局”修复它,因为我不希望
javax.net.ssl.trustStore
特定于一次回购。我创建了一个
truststore.gradle
文件,并将其放在
~/.gradle/init.d/
下,在该文件中添加了
System.setProperty(“javax.net.ssl.truststore”,“我的信任库路径”)
。就像命令行中的符咒一样,希望它也能对AndroidStudio起作用。我可以证实,这个技巧对AndroidStudio也起作用:)