Skip to content

Commit e59abe7

Browse files
committed
fix: fix die loop
1 parent 8530e80 commit e59abe7

File tree

4 files changed

+9
-6
lines changed

4 files changed

+9
-6
lines changed

src/main/java/io/github/linyimin/plugin/compile/MybatisPojoCompile.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,6 @@ public static void setClassLoader(Project project) {
4545
List<String> dependencies = getProjectDependencies(project);
4646

4747
List<URL> urls = new ArrayList<>();
48-
final List<String> list = OrderEnumerator.orderEntries(project).recursively().runtimeOnly().getPathsList().getPathList();
4948
for (String path : dependencies) {
5049
try {
5150
urls.add(new File(FileUtil.toSystemIndependentName(path)).toURI().toURL());

src/main/java/io/github/linyimin/plugin/dom/Constant.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ public class Constant {
3434
public static final String MYBATIS_LOGGING_SLF4J = "slf4j";
3535
public static final String MYBATIS_LOGGING_LOG4J = "log4j";
3636

37+
public static final String JAR_FILE_END = "!";
38+
3739
private static final String PATTERN = "yyyy-MM-dd HH:mm:ss";
3840
private static final DateFormat DF = new SimpleDateFormat(PATTERN);
3941
public static Map<String, Object> normalTypes = new ContainerUtil.ImmutableMapBuilder<String, Object>()

src/main/java/io/github/linyimin/plugin/service/SqlParamGenerateService.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ private boolean checkNeedCompile(String mybatisConfig, String methodQualifiedNam
6161

6262
try {
6363
MybatisSqlUtils.getSql(mybatisConfig, methodQualifiedName, params);
64-
} catch (Exception e) {
64+
} catch (Exception | NoClassDefFoundError e) {
6565
return true;
6666
}
6767

@@ -171,9 +171,9 @@ private String parseParamNameTypeList(List<ParamNameType> paramNameTypes) {
171171
} else {
172172
Map<String, Object> classParam = getFieldFromClass(psiClass);
173173
if (paramNameType.isParamAnnotation) {
174-
param.putAll(classParam);
175-
} else {
176174
param.put(name, classParam);
175+
} else {
176+
param.putAll(classParam);
177177
}
178178
}
179179

src/main/java/io/github/linyimin/plugin/utils/JavaUtils.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import com.intellij.psi.*;
66
import com.intellij.psi.impl.compiled.ClsFileImpl;
77
import com.intellij.psi.search.GlobalSearchScope;
8+
import io.github.linyimin.plugin.dom.Constant;
89
import org.apache.commons.lang.ArrayUtils;
910
import org.apache.commons.lang.StringUtils;
1011
import org.jetbrains.annotations.NotNull;
@@ -169,8 +170,8 @@ public static Set<String> getAllDependenciesRecursive(Project project) {
169170
visited.add(clazz);
170171

171172
Set<PsiClass> dependencies = getAllDependencies(clazz);
172-
dependencies.remove(psiClass);
173-
queue.addAll(visited);
173+
dependencies.removeAll(visited);
174+
queue.addAll(dependencies);
174175
}
175176

176177
visited.remove(psiClass);
@@ -180,6 +181,7 @@ public static Set<String> getAllDependenciesRecursive(Project project) {
180181
return allDependencies.stream()
181182
.map(item -> item.getContainingFile().getVirtualFile().getCanonicalPath())
182183
.filter(path -> StringUtils.isNotEmpty(path) && path.contains("jar!"))
184+
.map(path -> StringUtils.substring(path, 0, path.lastIndexOf(Constant.JAR_FILE_END)))
183185
.collect(Collectors.toSet());
184186
}
185187
}

0 commit comments

Comments
 (0)