luckybilly / luckybilly/AutoRegister

增量编译为什么没有处理 DirectoryInput

Open
#25 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Groovy
Stars
1.1k
Forks
171
PR merge metrics
No merged PRs in 30d

Description

增量编译的处理,对于遍历 JarInput 有判断状态,读取缓存等操作

```
if (jarInput.status != Status.NOTCHANGED && cacheMap) {
cacheMap.remove(jarInput.file.absolutePath)
}

if (!scanProcessor.scanJar(src, dest) //直接读取了缓存,没有执行实际的扫描
//此jar文件中不需要被注入代码
//为了避免增量编译时代码注入重复,被注入代码的jar包每次都重新复制
&& !scanProcessor.isCachedJarContainsInitClass(src.absolutePath)) {
//不需要执行文件复制,直接返回
return
}
```

但在遍历目录的时候,没有特殊的处理,没有使用到 DirectoryInput.getChangedFiles(),也没有缓存相关的操作

小白求助,可以请问一下是出于什么考虑吗

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by comparing the JarInput handling with the directory traversal that processes DirectoryInput. Inspect DirectoryInput.getChangedFiles(), cacheMap, and the scanProcessor.scanJar path mentioned in the issue. Done means establishing whether directory inputs should use equivalent incremental and cache handling, or documenting the reason they do not.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, groovy
Domain
build-system, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.