使用maven我們可以排除一些傳遞性依賴項。禁止導入一些傳遞的maven依賴項
但是如果我們在運行時需要它們,並且仍然作爲架構師,我不希望它們被使用併成爲API依賴項。
是否有工具來定義和檢查不需要的使用依賴項(即在某些Java類中導入)?
一個搜索這裏給我暗示對Maven In maven, can you disallow usage of transitive dependency in your code but still keep it in the classpath?
但是,這可能是費力的定義。也許應該使用IDE工具?
如何禁止導入和使用一些傳遞的maven依賴? 因此,代碼將不會訪問我們堆棧的不同層。
是的,我明白一些教育工作也應該如此。
https://github.com/nebula-plugins/gradle-lint-plugin既不maven也不禁止依賴關係,但它掃描代碼中的實際依賴關係,找出哪些依賴關係[未使用](https://github.com/nebula-plugins/gradle-lint-plugin/wiki/Unused-Dependency-Rule)。也許你可以適應那部分。 – zapl
很高興知道,但需要類似的maven。 –
我會建議深入研究http://jqassistant.org/,它可以定義這樣的規則等。 – khmarbaise