Я столкнулся с проблемой при использовании PMD для проверки ошибок кода. Я не знаю, как удовлетворить два требования одновременно. Например, если я хочу проверить метод ABC, не существующий в файле, выходит из BCD. Я знаю, как проверить, существует ли ABC или распространяется ли она отдельно от BCD, используя PMD.объединить две проверки PMD
Как это:
//PrimaryExpression/PrimaryPrefix/Name [@Image = "ABC"];
//ExtendsList/ClassOrInterfaceType [@Image != "BCD"];
сейчас есть в любом случае, что я могу проверить эти два вместе. Например, я хочу, чтобы ни одна из ABC в классе не расширила BCD. Кажется, я не могу просто использовать такие вещи, как и для подключения этих двух запросов Xpath. Кроме того, я заметил, что могу использовать | связать с ними, но | работает как или. Мне нужно и здесь, а не вместо.
Edit:
Я пытался что-то вроде этого:
//PrimaryExpression/PrimaryPrefix/Name[@Image = "ABC"]
[//ancestor::ClassOrInterfaceDeclaration/ExtendsList/
ClassOrInterfaceType[@Image != "BCD"]]
который, кажется, как это работает для меня по крайней мере. Но я все еще не уверен на 100%, если это правильный путь, так как я просто попробовал это.