Search   Browse   Javadoc Search   Javadoc Browse   More   Web Tutorials
Maven-Focused Java Class and Archive Search Engine
Maven-Focused Java Class and Archive Search Engine
About |

About Jarvana

What is Jarvana?
Jarvana is a Java-based web application that lets you:
What does "Jarvana" mean?
"Jarvana" is a portmanteau of the words "Nirvana" and "jar". "Nirvana" refers to the Buddhist concept of attaining enlightenment and freedom from endless suffering. A "jar" file is a Java archive file, which essentially is a zipped collection of Java classes. Thus, "Jarvana" implies freedom from the suffering associated with Java classes and archives.
How did Jarvana come into existence?

Deron:

One night while coding, I was frustrated that no web-based tool existed (that I knew of) that would let me search for a Java class and get its Maven artifact dependency entry so that I could use that class in my project. I had recently learned Apache Lucene, so I decided to write a small web application to index and search all the Java classes in the central repository. In the morning, I had my little prototype working and was thrilled with the results.

The Maven central repository represents a fantastic centralization of Java libraries, and it occurred to me at that point that I could expand on that initial search idea to include project searches and content searches. Hyperlinking could be used to provide links to related searches and files. I realized that there were several other features that I really wanted, such as a Maven repository web application interface that would make browsing the repository easier, by providing capabilities such as sorting and information about folders (folder size, number of files inside, number of archives inside, etc). I also wanted to be able to inspect jar files and other archive files via the web interface so that I wouldn't have to download and unzip them to see their contents. Furthermore, I wanted to be able to inspect POM files and Maven plugins via the web interface, and I wanted these interfaces to provide lots of relevant hyperlinks and search capabilities.

Why did we write Jarvana?
We are big fans of Java and big fans of Maven. Hopefully Jarvana will help out current Java and Maven developers and will help enlist new Java and Maven fans.
What technologies are involved in Jarvana?
Jarvana is a Java web application. Search functionality is Lucene-based. An embedded Derby database is used to store index configuration data. Several Apache Commons projects are utilized. Technologies featured in the application include servlets, JSPs, JSTL, JDBC, XML, JavaBeans, threads, collections, and regular expressions, to name a few. Jarvana uses Maven for project building and management. Jarvana was written using the Eclipse IDE.
What is Maven?
Apache Maven is a truly amazing Java "project management" tool. Perhaps its most important use is as a project build tool, similar to Ant on steroids. A primary concept of Maven is the use of a centralized "artifact" repository, which you can think of as a giant collection of jar files and related files. These jar files get downloaded from the remote repository to your local computer's repository on an as-needed basis for your Maven-based Java projects.
Is Jarvana a Maven Repository Manager?
No, Jarvana is simply a Java web application that allows users to search and browse for information in the central Maven Repository. If you require a repository manager, we recommend Sonatype Nexus and Apache Archiva.
Does Jarvana have any Eclipse integration?
Currently, no. If you would like to get up and running quickly with Maven in Eclipse, we recommend Sonatype Maven Integration for Eclipse (m2eclipse). If you would like to work with Maven in Eclipse at a lower level, you can use Maven's maven-eclipse-plugin. Tutorials describing this technique can be found here.
Can I inspect the contents of a jar file in a jar file?
No, the archive "inspect" feature only allows inspection of the contents of an archive file, not an archive file within an archive file.