从树数据结构打印纯文本树(java)

我是一个狂热的粉丝

mvn dependency:tree 

并希望打印一个外观相似的树作为普通的ascii文本作为我的java程序的输出。

  com.totsp.gwt:maven-gwt-sample:war:1.0-SNAPSHOT +- com.google.gwt:gwt-servlet:jar:2.4.0:compile +- com.google.gwt:gwt-user:jar:2.4.0:provided | +- javax.validation:validation-api:jar:1.0.0.GA:provided | \- javax.validation:validation-api:jar:sources:1.0.0.GA:provided +- log4j:log4j:jar:1.2.14:compile \- junit:junit:jar:4.1:test 

我希望实现这一目标的库很容易使用,但我找不到它。

我看到的最接近的替代品是: http : //code.google.com/p/j-text-utils/但它不如Maven那么好。

我在哪里可以找到一个打印树结构的库,文本几乎与mvn依赖:tree相同?

我不是创建/使用MOJO的专家,但是如何下载并查看maven-dependency-plugin呢?

将它作为依赖项添加到项目中是很简单的(我猜你是由Maven管理的),乍一看,你应该直接调用TreeMojo.execute()或类似的东西。

它粗略地做了这样的事情:

 ArtifactFilter artifactFilter = createResolvingArtifactFilter(); rootNode = dependencyTreeBuilder.buildDependencyTree( project, localRepository, artifactFactory, artifactMetadataSource, artifactFilter, artifactCollector ); String dependencyTreeString = serializeDependencyTree( rootNode ); DependencyUtil.log( dependencyTreeString, getLog() ); 

这是你在寻找什么?