See the OML Specification Document published from https://github.com/JPL-IMCE/gov.nasa.jpl.imce.oml.doc using GitBook.
OML is a specification language designed to support rigorous ontology modeling in the context of model-based systems engineering. This multi-project is organized according to Eclipse Tycho guidelines.
The OML Update Site explains how to add the OML features into an existing Eclipse installation.
The OML Workbench is an Eclipse-based RCP application.
-
In Eclipse Preferences: Workspace: "Text file encoding" must be set to "UTF-8" "New text file line delimiter" must be set to "unix"
-
Publish a new version:
Execute
./scripts/publishProcess.sh
.This will prompt for a new version -- enter a string of the form
<major>.<minor>.<patch/build>
. This creates a version-specific release branch and tag. This also pushes the release branch and tag to origin, which should trigger the travis-ci job that will build the release and deploy it to bintray. -
Set the next snapshot version:
Execute
./scripts/snapshotVersion.sh
.This will prompt for a new version -- enter a string of the form
<major>.<minor>.<patch/build>.qualifier
. This changes the versions in manifests and pom files. This also pushes the version changes. -
Managing versions on bintray:
OML is a collection of multiple packages, each with its own versioned artifacts; see: https://bintray.com/jpl-imce/gov.nasa.jpl.imce.oml To operate on all OML packages, see the utility: scripts/btOMLProjectsDo.sh
Execute
./scripts/btOMLProjectsDo.sh
to get command-line usage information.
Xtext compiles a grammar file, *.xtext
into a corresponding binary in the src-gen
folder as *.xtextbin
.
If generated sources are in GIT:
git ls-files *.xtext | wc -l
should be equal togit ls-files *.xtextbin | wc -l
.gitignore
should no include a pattern matching*.xtextbin
Execute from the gov.nasa.jpl.imce.oml.tycho
folder:
mvn org.eclipse.tycho:tycho-versions-plugin:set-version -DnewVersion={VERSION} -Dtycho.mode=maven
where {VERSION}
follows semantic versioning (e.g., Major.Minor.Patch
or Major.Minor.Patch-SNAPSHOT
).
Note that this should update all versions in the following locations:
pom.xml//project/version
pom.xml//project/parent/version
META-INF/MANIFEST.MF//Bundle-Version
feature.xml//feature/@version
*.product//product/@version
*.product//product/features/feature/@id
category.xml//site/feature[@id=...]/@url
category.xml//site/feature[@id=...]/@version
Check carefully the log to make sure all versions have been properly updated.
Check with git status
and/or git diff
to confirm the changes.
In order to make sure your eclipse installation is running a particular version of Java, the eclipse configuration file must be edited. The following must be added to 'eclipse.ini' located in your Eclipse installation folder before the line that contains '-vmargs':
-vm
PATH_TO_JAVA/bin