• BLOG
  • OpenSpecimen Main program

    Dear OpenSpecimen-Community,

    My colleague and I are currently working on trying to solve a problem in running the OpenSpecimen software on our server. We would like to open the OpenSpecimen software using Eclipse, in order to perform debugging. Therefore, we would be grateful if you could give us the name and path of the main operational script of OpenSpecimen. This would greatly help us in the process of debugging.

    Kind regards,


    Hi Lynn,

    OpenSpecimen is packaged and run as a web application. It doesn’t have any main class.

    That being said, I would like to know the intent of asking this question. What are you trying to do? and why you are debugging the code? :slight_smile:

    If you could share the error or problem that you are facing, we can help you solve the problem.

    Please let us know if you have any questions/concerns.


    Its a gradle project using spring MVC over Tomcat.
    A developement environment for Openspecimen is tricky:
    The basic software and its setup is described in this guide:

    Eclipse is also capable of doing it:
    So if you want to do it search for something along the lines of:
    Setup gradle project with spring mvc tomcat eclipse
    and find a similar guide that describes the steps for eclipse like this one:

    From there its trial and error
    The versions are important and some settings are surely different for Openspecimen but the basic stack is working and Krishagni uses Intellij themselves (as u can see by some lost .idea folders).
    As stated it has no main since the “main” is the servlet within tomcat.
    I did not need a full dev environment so far so i did not set one up. Expect a few days to at most 3 weeks of trial and error based on how much you know about Spring and Tomcat already.

    Some more infos on caveats:
    Do not use any Spring Boot guides since this technology is very different but looks the same. Namely the difference is that the present Openspecimen source only uses MVC and not boot. This means all the Hibernate mappings (HIbernate just allows you to make a Java class out of an SQL query and map it to a certain db table or field) are written manually.