Call my own operator from rapidminer-studio-core built on eclipse
Hi, everyone.
Since I am developing my own operator, I need to call it from the rapidminer-studio-core (7.3.0-SNAPSHOT), that has been built on eclipse.
(I followed this tutorial and successfully built and ran it without any errors.)
However, I cannot see any operators from rapidminer-studio-core's GUI even though I locate the operator's jar file into the specific directory, $HOME/.Rapidminer/extensions. This directory is also used from the original Rapidminer Studio, that has been downloaded from official website, and my operators can be seen from the original Rapidminer Studio.
Does anyone give me advices how to call my extension from rapidminer-studio-core built on eclipse?
Answers
-
Hi, everyone.
I found a warning in rapidminer-studio-core's log:WARNING: Cannot register operators from MyOwnOperator: RapidMiner Studio dependency not fulfilled! This extension needs RapidMiner Studio version 7.3.000. RapidMiner version is 7.3.000-SNAPSHOT
0 -
Hi,
WARNING: Cannot register operators from MyOwnOperator: RapidMiner Studio dependency not fulfilled! This extension needs RapidMiner Studio version 7.3.000. RapidMiner version is 7.3.000-SNAPSHOT
The priority of snapshot versions is lower than an actual released version - this is the reason why you are getting this error.
You can resolve this error by publishing RapidMiner Core 7.3.000-SNAPSHOT to your local repository (gradle publishJarPublicationToMavenLocal) and changing your extension dependency to 7.3.000-SNAPSHOT. If you want to release your extension later on don't forget to remove the snapshot tag.
Another way, without publishing the artifact, is to modify a Java class of the open core:
Version.java:
@Override
public int compareTo(VersionNumber o) {
int index = Double.compare(this.majorNumber, o.majorNumber);
if (index != 0) {
return index;
} else {
index = Double.compare(this.minorNumber, o.minorNumber);
if (index != 0) {
return index;
} else {
index = Double.compare(this.patchLevel, o.patchLevel);
if (index != 0) {
return index;
}
// CHANGE THE FOLLOWING LINE
// to treat development builds as released versions
return 0;
}
}
}and
public final boolean isSnapshot() {
// always return true
return true;
}Hope this helps,
Marcel
1