redhat-developer / redhat-developer/vscode-java
Unexpected dead code warning.
Ouverte
Personne n'a encore pris cette issue.
- Langage dominant
- TypeScript
- Étoiles
- 2.3k
- Forks
- 546
- Merge moyen
- 20 h 1 min
- PR mergées (30 j)
- 11
Description
SessionCallback<List<Object>> obj;
public void method() throws TransactionException {
StringRedisTemplate stringRedisTemplate = resourcePool.template();
var res = obj.execute(stringRedisTemplate);// @Nullable <K, V> T execute(RedisOperations<K, V> operations) throws DataAccessException;
if (res == null) {
System.out.println("Direct execution is not Dead Code");
}
List<Object> results = stringRedisTemplate.execute(new SessionCallback<List<Object>>() {
@Override
@Nullable
public <K, V> List<Object> execute(@NonNull RedisOperations<K, V> operations) throws DataAccessException {
operations.multi();
return null;
}
});
// @Override public <T> T StringRedisTemplate::execute(SessionCallback<T> session) {
// ...
// try {
// return session.execute(this); -> this is NullAble
// } finally {
// RedisConnectionUtils.unbindConnection(factory);
// }
// }
if (results == null) {
throw new TransactionException("Transaction failed, please retry") {
};
}
}
Minimal reproduce repo
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par le dépôt minimal de reproduction lié dans l’issue et exécutez le snippet Java qui déclenche l’avertissement de code mort. Comparez l’avertissement avec les chemins d’exécution nullable présentés et le diagnostic joint ; c’est terminé lorsque le comportement de l’avertissement est correctement corrigé ou clairement reproduit pour les maintainers du projet.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- java, typescript
- Domaine
- devtools
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100