Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/188.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
Java Gradle使用源代码中的类作为包阶段的一部分_Java_Android_Gradle - Fatal编程技术网

Java Gradle使用源代码中的类作为包阶段的一部分

Java Gradle使用源代码中的类作为包阶段的一部分,java,android,gradle,Java,Android,Gradle,我在Android上使用它,但我认为它可以应用于任何gradle项目 我有一些文件要打包在最终归档中。 我希望这个文件被加密,然后应用程序将解密时,阅读它们 我使用的是: gradle.projectsEvaluated { dexDebug.dependsOn(encryptFiles) } task encryptFiles<< { .... } 如何设置任务的类路径(encryptFiles),以便在编译时使用该类路径?我会将加密和解密代码提取到独立于Android

我在Android上使用它,但我认为它可以应用于任何gradle项目

我有一些文件要打包在最终归档中。 我希望这个文件被加密,然后应用程序将解密时,阅读它们

我使用的是:

gradle.projectsEvaluated {
    dexDebug.dependsOn(encryptFiles)
}

task encryptFiles<< {
....
}

如何设置任务的类路径(encryptFiles),以便在编译时使用该类路径?

我会将加密和解密代码提取到独立于Android项目的单独jar库中。这样做之后,我将在Gradle构建脚本和Android应用程序中使用它作为依赖项。这将是最干净的解决方案。

事实上,这是一个好主意,而且行之有效。然而,我的加密是一个单独的类,并且管理一个独立的项目,这对我来说似乎太过分了。我刚刚在build.gradle中复制了加密代码,直到找到更好的方法。注意,我曾尝试在android项目中的模块中提取代码,但没有成功,而且,如果设置为构建类路径依赖项,构建将锁定jar,清理将失败。
decryptedDir.eachFileMatch(p) { File f -> EncryptHelper.encrypt(f, destination) }