PIPE 5 is currently in beta stage due to an entire re-write of the back end and so is missing most of the analysis modules. If you require Petri net analysis, please use PIPE 4.
An alpha version that supports hierarchical Petri nets and external interfaces is under development, and is available in the hierarchical-nets branches of PIPE and PIPECore. It consists of business logic in the PIPECore project (plus a few compatibility changes in PIPE), and does not yet have user interface support.
PIPE is an open source, platform independent tool for creating, simulating and analysing Petri nets including Generalised Stochastic Petri nets. Petri nets are a popular way for modelling concurrency and synchronisation in distributed systems and to learn more about Petri nets, you can start by reading the 2006/7 MSc. project report available here.
If you use PIPE in your research, we would be grateful if you would cite the relevant publications:
If you just wish to use the latest release download the latest uber-jar from the release page, double click and go!
First check out the release you're interested in e.g:
$ git checkout PIPE-5.0.0-beta-3
Then to build the
jar execute the following from within the PIPE root directory:
$ mvn install
Once finished you should see the creates
jars in the directory
In order to run the PIPE GUI execute the following commands from within the PIPE root directory:
$ mvn install $ mvn exec:exec -pl pipe-gui
There are some internal libraries, which need to be found for maven. For the mean time they are located in the project under
src/local-libs and this directory is treated as a local library. When installing expect the following warning:
[WARNING] The POM for internal:XXX is missing, no dependency information available
The original method for these local libraries required running a Python script to install the local libraries using
mvn install, however this new method removes the need for a pre-install step).
If you know of a better way to do this, please raise it in the issues section.
Just follow the following recommended process:
git checkout -b my-new-feature)
git commit -am 'Add some feature')
git push origin my-new-feature)