编辑Maven编译的存储库源代码

时间:2015-06-12 20:26:32

标签: java android maven compilation

我正在使用maven存储库:

https://github.com/CyberAgent/android-gpuimage

依赖关系是:

compile 'jp.co.cyberagent.android.gpuimage:gpuimage-library:1.2.3'

我需要修复他们的源代码中的错误。但是当我打开课程时,该方法是预编译的代码,我无法改变它。

public void onInitialized() { /* compiled code */ }

你知道我如何在本地对它进行更改(即使我必须将依赖关系指向我的计算机上的路径就好了,但我该怎么做呢?

更新

当我在Android Studio中打开它时,这是github项目文件夹结构。有一个库文件夹,我想变成一个aar。

enter image description here

1 个答案:

答案 0 :(得分:1)

由于源代码可用,因此无需过多使用。

如果您无法通过扩展课程来解决您的问题,则可以克隆该项目:

git clone https://github.com/CyberAgent/android-gpuimage.git

然后将gradle.properties中的版本更改为 1.2.3-agressorpatch1 (作为示例),以区分工件与原始工件。然后更改要更改的源并编译项目:

gradle clean assemble

该项目获得了apache许可,因此完全可以。

创建的jar需要最终在maven存储库中。将它本地复制到〜/ .m2 / repository(或maven repo所在的位置)或保持相同结构的文件夹。

file:///sharedfolder/jp/co/cyberagent/android/gpuimage/gpuimage-library/1.2.3-agressorpatch1/gpuimage-library-1.2.3-agressorpatch1.aar

您发布的链接是源存储库,而不是maven存储库。

所以你需要告诉你的构建也使用这个位置。我对gradle不好,但看起来会像:

repositories {
    maven {
        url "file:///sharedfolder"
    }
}

这可以节省您手动反编译类并重新打包工件等等。