You won't need to commit the MASON source files into your repository, but your users will need the MASON jar file.

When you compile your project with Netbeans (using the `clean and build' menu option), it will create a jar of your project inside the `dist/' directory.  It will also create the directory `dist/lib/' and place a copy of the MASON jar inside it.

You want to distribute the entire contents of the `dist/' directory to your users.  When they double-click the jar for your simulation, it will automatically look inside the `lib/' directory to find dependencies, such as MASON.

It is possible to use Ant or Maven to package dependencies such as MASON inside a single jar, so your users only have to worry about one file.  You could do this in NetBeans by modifying your project's build.xml file (which is Ant's version of a makefile), but this isn't easy to do.  Personally, I just live with putting my dependencies the external `lib' folder.


On Thu, Jun 25, 2015 at 4:06 AM, Tschanen Miriam <[log in to unmask]> wrote:
Hi Siggy,

Thank you very much for the fast reply! This is a much cleaner approach and everything appears to be working perfectly.

Just to be sure though, when pushing to Git I will need to include both projects, as well as the original MASON folder that I linked as "existing source" in the master project. Is that correct? Also, how would I go about building a deployable file once my simulation is complete?


Von: MASON Multiagent Simulation Toolkit [[log in to unmask]]" im Auftrag von "Eric 'Siggy' Scott [[log in to unmask]]
Gesendet: Mittwoch, 24. Juni 2015 21:50
An: [log in to unmask]
Betreff: Re: Using MASON in an IDE


I use NetBeans, and I keep things clean by keeping MASON in one project, and writing all of my custom code in its own, separate project.

In the project where you'll write your own model, right-click on "Libraries," select "Add Project," and choose the project you created for MASON.  This hooks your project up with a MASON jar but won't clutter your source directory.


On Wed, Jun 24, 2015 at 3:21 PM, Tschanen Miriam <[log in to unmask]> wrote:
Dear all,

I'm very new to agent-based modeling and am planning to use MASON for a bachelor thesis project. Unfortunately I am having some trouble integrating the framework into an IDE.

I tried to follow the Eclipse tutorial linked on the MASON homepage (here: https://cs.gmu.edu/~eclab/projects/mason/extensions/eclipse/ ), but cannot figure out step 5. There is no menu option called "Create project from existing source" in Eclipse Luna on Windows 7.

I then switched to NetBeans and tried the other tutorial, also linked on the MASON homepage (here: https://cs.gmu.edu/~eclab/projects/mason/extensions/netbeans/ ), which kind of works - I can compile and run MASON from NetBeans. But this approach also dumps a large number of files (including all the tutorials, ReadMes, etc.) directly into my project structure, which is now rather cluttered. Is there no cleaner way to link MASON as a library? I am also worried about portability of the project, my supervisors want to keep track of progress through Github and in the end we would like to deploy the model as a single executable file.

I am somewhat familiar with both Eclipse and NetBeans, but I have no experience at all with building and linking complex projects, using makefiles and other such things. I would very much appreciate some pointers on this matter. Either Eclipse or NetBeans are fine by me, as long as I can find a clean and reliable way to use them with MASON.

Miriam Tschanen


Ph.D student in Computer Science
George Mason University


Ph.D student in Computer Science
George Mason University