Jarek
Jarek

Reputation: 7729

Accessing information about Java libraries programmatically

I would like to write toy IDE for Java, so I ask a question about one particular thing that as I hope can help me get started.

I have editor implemented on top of swing and i have some text in there. There is for example:

import java.util.List;

Now I need a way to send "java.util.List" string to a method that returns me all the information I may need including JavaDoc document.

So is there any tool that can set up classpath with libraries, that would parse every string I send and try to find if there is any Class/Interface with documentation to return?

Upvotes: 0

Views: 230

Answers (4)

alain.janinm
alain.janinm

Reputation: 20065

First you need to know How to print imported java libraries?. Then download java API documentation here. Once you find out imported libraries, open an inputStream in order to read appropriate HTML file. Beware! This technic will only work when importing from jdk.

Upvotes: 0

fredo
fredo

Reputation: 325

You could use html parser to get the javadoc and other info from the web using the full path to the class (including package names to construct the correct URL per class). This will of course depend on the version of java you are using.
You can also use the javadoc tool from within java to generate the desired documentation from java source files (which can be downloaded from the web). The source code of the tool could also help you out. See http://java.sun.com/j2se/javadoc/faq/#developingwithjavadoc
Lastly, if you need information based on runtime types in your program, you might want to check reflection capabilities.

Upvotes: 1

Jayan
Jayan

Reputation: 18458

Libraries will have class files, which will not have javadocs.. So it is not clear what you want to do.

There are many byte code engineering tools to analyse and extract information from class files. For example asm or bcel. Javassist allows to process both source and byte code, so may be close to what you need.

Upvotes: 1

Stephen C
Stephen C

Reputation: 719310

So is there any tool that can set up classpath with libraries, that would parse every string I send and try to find if there is any Class/Interface with documentation to return?

AFAIK, no. There is no such free-standing tool or library. You will need to implement it yourself. (Don't expect that writing a Java IDE is simple ... even a "toy" one.)

Upvotes: 1

Related Questions