Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

useCustomCompile开启的时候,修改library里面的代码好像没有生效 #88

Open
GothicFox opened this issue Jan 8, 2018 · 3 comments

Comments

@GothicFox
Copy link

大牛你好,我这边拿sample直接试的。
就改了两个地方:
useCustomCompile = true

MainActivity onCreate 里面 tv2.setText(CommonUtils.str);

然后我就去修改CommonUtils.str的值来看是否生效,发现修改CommonUtils.str值之后,还是显示之前的值。

然后我去build里面patch目录下找到class.dex,解开,发现并没有CommonUtils的class在里面,只有CustomView_ViewBinding.class和MainActivity_ViewBinding.class,应该是扫描改动的时候没有扫描到吗?

我这边由于java代码比较多,需要开启useCustomCompile,帮忙看下,谢谢🙏

@typ0520
Copy link
Owner

typ0520 commented Jan 8, 2018

日志里add class有你修改的那个类吗

@GothicFox
Copy link
Author

嗯,嗯,没有CommonUtils这个类的add class,但是changed class 好像有一个,日志在下面:

Executing tasks: [:app:assembleDebug]

Configuration 'compile' in project ':app' is deprecated. Use 'implementation' instead.
Configuration 'testCompile' in project ':app' is deprecated. Use 'testImplementation' instead.

====fastdex add dynamic property: 'android.enableBuildCache=true'
====fastdex add dynamic property: 'kotlin.incremental=true'

Configuration 'compile' in project ':common' is deprecated. Use 'implementation' instead.
Configuration 'compile' in project ':common-group:common2' is deprecated. Use 'implementation' instead.
task: transformClassesWithStackFramesFixerForDebugtransform: class com.android.build.gradle.internal.transforms.FixStackFramesTransform
task: transformClassesWithDesugarForDebugtransform: class com.android.build.gradle.internal.transforms.DesugarTransform
task: transformClassesWithDexForDebugtransform: class com.android.build.gradle.internal.transforms.DexTransform

==fastdex find dex transform. transform class: class com.android.build.gradle.internal.transforms.DexTransform . task name: transformClassesWithDexForDebug

task: transformNativeLibsWithMergeJniLibsForDebugtransform: class com.android.build.gradle.internal.transforms.MergeJavaResourcesTransform
task: transformResourcesWithMergeJavaResForDebugtransform: class com.android.build.gradle.internal.transforms.MergeJavaResourcesTransform
:app:preBuild UP-TO-DATE
:common:preBuild UP-TO-DATE
:common:preDebugBuild UP-TO-DATE
:common:checkDebugManifest UP-TO-DATE
:common:processDebugManifest UP-TO-DATE
:common-group:common2:preBuild UP-TO-DATE
:common-group:common2:preDebugBuild UP-TO-DATE
:common-group:common2:checkDebugManifest UP-TO-DATE
:common-group:common2:processDebugManifest UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:common:compileDebugAidl UP-TO-DATE
:common-group:common2:compileDebugAidl UP-TO-DATE
:app:compileDebugAidl UP-TO-DATE
:common:packageDebugRenderscript NO-SOURCE
:common-group:common2:packageDebugRenderscript NO-SOURCE
:app:compileDebugRenderscript UP-TO-DATE
:app:checkDebugManifest UP-TO-DATE
:app:generateDebugBuildConfig UP-TO-DATE
:app:prepareLintJar UP-TO-DATE
:app:createDebugCompatibleScreenManifests UP-TO-DATE
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources UP-TO-DATE
:common:compileDebugRenderscript UP-TO-DATE
:common:generateDebugResValues UP-TO-DATE
:common:generateDebugResources UP-TO-DATE
:common:packageDebugResources UP-TO-DATE
:common-group:common2:compileDebugRenderscript UP-TO-DATE
:common-group:common2:generateDebugResValues UP-TO-DATE
:common-group:common2:generateDebugResources UP-TO-DATE
:common-group:common2:packageDebugResources UP-TO-DATE
:app:mergeDebugResources UP-TO-DATE
:app:processDebugManifest
:app:fastdexProcessDebugManifest
:app:splitsDiscoveryTaskDebug UP-TO-DATE
:common:platformAttrExtractor UP-TO-DATE
:common:processDebugResources UP-TO-DATE
:common-group:common2:platformAttrExtractor UP-TO-DATE
:common-group:common2:processDebugResources UP-TO-DATE
:app:processDebugResources UP-TO-DATE
:app:generateDebugSources UP-TO-DATE
:app:fastdexPrepareForDebug
==fastdex hasDexCache: true
==fastdex discover dex cache for debug
==fastdex skip scan: /Users/user/Desktop/sample_org/app/build/generated/source/apt/debug
==fastdex: manifestFiles [/Users/user/Desktop/sample_org/app/src/main/AndroidManifest.xml]
==fastdex remove apt-dir from old snapshoot.

:app:fastdexCustomCompileDebugJavaWithJavac
==fastdex no java files changed, just ignore

:common:generateDebugBuildConfig UP-TO-DATE
:common:prepareLintJar UP-TO-DATE
:common:generateDebugSources UP-TO-DATE
:common:javaPreCompileDebug UP-TO-DATE
:common:compileDebugJavaWithJavac
:common:processDebugJavaRes NO-SOURCE
:common:transformClassesAndResourcesWithPrepareIntermediateJarsForDebug
:javalib:compileJava UP-TO-DATE
:javalib:processResources NO-SOURCE
:javalib:classes UP-TO-DATE
:javalib:jar UP-TO-DATE
:common-group:common2:generateDebugBuildConfig UP-TO-DATE
:common-group:common2:prepareLintJar UP-TO-DATE
:common-group:common2:generateDebugSources UP-TO-DATE
:common-group:common2:javaPreCompileDebug UP-TO-DATE
:common-group:common2:compileDebugJavaWithJavac UP-TO-DATE
:common-group:common2:processDebugJavaRes NO-SOURCE
:common-group:common2:transformClassesAndResourcesWithPrepareIntermediateJarsForDebug UP-TO-DATE
:app:javaPreCompileDebug SKIPPED
:app:compileDebugJavaWithJavac SKIPPED
:app:compileDebugNdk NO-SOURCE
:app:compileDebugSources UP-TO-DATE
:app:mergeDebugShaders UP-TO-DATE
:app:compileDebugShaders UP-TO-DATE
:app:generateDebugAssets UP-TO-DATE
:common:mergeDebugShaders UP-TO-DATE
:common:compileDebugShaders UP-TO-DATE
:common:generateDebugAssets UP-TO-DATE
:common:mergeDebugAssets UP-TO-DATE
:common-group:common2:mergeDebugShaders UP-TO-DATE
:common-group:common2:compileDebugShaders UP-TO-DATE
:common-group:common2:generateDebugAssets UP-TO-DATE
:common-group:common2:mergeDebugAssets UP-TO-DATE
:app:mergeDebugAssets UP-TO-DATE
:app:extractTryWithResourcesSupportJarDebug UP-TO-DATE
:app:fastdexScanAptOutputForDebug
==fastdex diff apt dir: /Users/user/Desktop/sample_org/app/build/generated/source/apt/debug
==fastdex find new apt file: fastdex/sample/MainActivity_ViewBinding.java
==fastdex find new apt file: fastdex/sample/CustomView_ViewBinding.java

:app:transformClassesWithStackFramesFixerForDebug
:app:transformClassesWithDesugarForDebug
:app:transformClassesWithDexForDebug
==fastdex patch transform start,we will generate dex file
==fastdex generate patch jar start
==fastdex changedClasses: [fastdex.sample.MainActivity_ViewBinding, fastdex.sample.CustomView_ViewBinding, fastdex.sample.common.CommonUtils]
==fastdex prepare add injected class: fastdex/sample/CustomView_ViewBinding.class
==fastdex prepare add injected class: fastdex/sample/MainActivity_ViewBinding.class
==fastdex generate patch jar complete, use: 22ms 
/Users/user/Desktop/sample_org/app/build/fastdex/Debug/patch.jar

sh /Users/user/Desktop/sample_org/app/build/fastdex/fastdex-dx --dex --no-optimize --force-jumbo --output=/Users/user/Desktop/sample_org/app/build/fastdex/Debug/dex/patch/classes.dex /Users/user/Desktop/sample_org/app/build/fastdex/Debug/patch.jar
==fastdex patch transform generate dex success. use: 744ms
 
==fastdex patch transform hook patch dex start
==fastdex patch build dex-dir[classes3.dex]
==fastdex fastdex-runtime.dex => /Users/user/Desktop/sample_org/app/build/intermediates/transforms/dex/debug/0/classes.dex
==fastdex merged-patch.dex => /Users/user/Desktop/sample_org/app/build/intermediates/transforms/dex/debug/0/classes2.dex
==fastdex patch build dex-dir[classes.dex,classes2.dex,classes3.dex]
 

:app:fastdexPatchForDebug
==fastdex instant run disable

:app:mergeDebugJniLibFolders UP-TO-DATE
:common:compileDebugNdk NO-SOURCE
:common:mergeDebugJniLibFolders UP-TO-DATE
:common:transformNativeLibsWithMergeJniLibsForDebug UP-TO-DATE
:common:transformNativeLibsWithIntermediateJniLibsForDebug UP-TO-DATE
:common-group:common2:compileDebugNdk NO-SOURCE
:common-group:common2:mergeDebugJniLibFolders UP-TO-DATE
:common-group:common2:transformNativeLibsWithMergeJniLibsForDebug UP-TO-DATE
:common-group:common2:transformNativeLibsWithIntermediateJniLibsForDebug UP-TO-DATE
:app:transformNativeLibsWithMergeJniLibsForDebug UP-TO-DATE
:app:processDebugJavaRes NO-SOURCE
:app:transformResourcesWithMergeJavaResForDebug UP-TO-DATE
:app:validateSigningDebug
:app:packageDebug
==fastdex copy meta info: 
from: /Users/user/Desktop/sample_org/app/build/fastdex/Debug/fastdex-meta-info.json
into: /Users/user/Desktop/sample_org/app/build/intermediates/assets/debug/fastdex-meta-info.json

:app:assembleDebug

BUILD SUCCESSFUL in 6s
69 actionable tasks: 13 executed, 56 up-to-date
Task spend time:
     71ms  :common:compileDebugJavaWithJavac
   3889ms  :app:transformClassesWithDesugarForDebug
    817ms  :app:transformClassesWithDexForDebug
    290ms  :app:packageDebug

@GothicFox
Copy link
Author

sample_org.zip
这个是工程的压缩包,只修改 fastdex.sample.common.CommonUtils#str 的值,再跑就行

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants