The Altair Community is migrating to a new platform to provide a better experience for you. In preparation for the migration, the Altair Community is on read-only mode from October 28 - November 6, 2024. Technical support via cases will continue to work as is. For any urgent requests from Students/Faculty members, please submit the form linked here
Answers
cd Rapid-I\RapidMiner5\lib\
java -jar rapidminer.jar
Like this?
nope ...what u wrote starts also the GUI .
and I am aware of rapidminer.bat -f but i dont want windows.
cheers
you can use "java -cp rapidminer.jar com.rapidminer.RapidMinerCommandLine"
Regards,
Marco
it always seems to fail.
I tried a very simple process just to discretize something and I removed any output.
It still ends with this:
....
May 14, 2012 11:17:44 AM com.rapidminer.RapidMinerCommandLine run
SEVERE: Here: Process[1] (Process)
subprocess 'Main Process'
==> +- Retrieve (2)[1] (Retrieve)
+- Select Attributes[0] (Select Attributes)
+- Filter Example Range[0] (Filter Example Range)
+- Discretize[0] (Discretize by Frequency)
May 14, 2012 11:17:44 AM com.rapidminer.RapidMinerCommandLine run
SEVERE: Process not successful
It does suggest it has been executed.
any more ideas?
thx
thats a bit of a reach I just want the ability to run jobs from command line,
what Marco suggested seems to be on the right track, but somethings still missing ...
It is very easy to run from eclipse.
Right, this said.
Did you check if the process runs with a relative path?
Maybe the retrieve operator is looking at some file that does not exist.
all is in the root of my repository.
about eclipse: I want to be able to launch RM in simple batch jobs that's why I want to avoid using eclipse.
What lines of code did you use to get it working?
thx for axing
no, it's NOT working >:( leads to the error I posted before
it does start (so it seems at least) the process.... but fails to finish!
May 16, 2012 12:09:07 AM com.rapidminer.RapidMinerCommandLine run
INFO: Process finished successfully
But the moment I enter a retrieve operator it fails.
I'll try and figure out how to get retrieve to work.
Right now I'm on windows, so I have to install linux again.
I planned to do this anyway, but takes a bit of time.
Here is the process (generate data, and log some result, write the log to a file):
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<process version="5.2.004">
<context>
<input/>
<output/>
<macros/>
</context>
<operator activated="true" class="process" compatibility="5.2.004" expanded="true" name="Process">
<process expanded="true" height="191" width="435">
<operator activated="true" class="generate_data" compatibility="5.2.004" expanded="true" height="60" name="Generate Data" width="90" x="45" y="30"/>
<operator activated="true" class="log" compatibility="5.2.004" expanded="true" height="76" name="Log" width="90" x="180" y="30">
<parameter key="filename" value="C:\Users\wessel\Desktop\z.log"/>
<list key="log">
<parameter key="a" value="operator.Generate Data.parameter.target_function"/>
</list>
</operator>
<operator activated="false" class="retrieve" compatibility="5.2.004" expanded="true" height="60" name="Retrieve" width="90" x="315" y="30">
<parameter key="repository_entry" value="dat/_4ackley"/>
</operator>
<connect from_op="Generate Data" from_port="output" to_op="Log" to_port="through 1"/>
<portSpacing port="source_input 1" spacing="0"/>
<portSpacing port="sink_result 1" spacing="0"/>
<portSpacing port="sink_result 2" spacing="0"/>
</process>
</operator>
</process>
So it should give you a warning like this:
Parameter 'repository entry' accesses a repository by name (//MY_REPOSITORY/SOME_DATA_SET). This may not be portable when sharing processes.
My process seems to run fine when I have this warning, the moment I set a relative path (which removes the warning) the process fails.
Best regards,
Wessel
edit: I think if you want it to work with a relative path you have to use
-classpath "%COMPLETE_CLASSPATH%" -Drapidminer.home="%RAPIDMINER_HOME%" -Drapidminer.operators.additional="%RAPIDMINER_OPERATORS_ADDITIONAL%" %RAPIDMINER_JDBC_DRIVER_PARAMETER% com.rapidminer.RapidMinerCommandLine %CMD_LINE_ARGS%
I tried the other syntax but it still did not work (relative path).
I tried XML process execution, same thing.
It does work when ABSOLUTE path in retrieve is used.
I dont want to be picky but since I move the processes between systems the RELATIVE path is much more desirable solution.
Else I would have to parse every process I port elsewhere to replace the repo path.
BUT if I rename all the repositories on the different machines to the SAME name! this may work without the need of parsing and replacing strings ...
I would say it qualifies as a BUG, dont u think?
thanks for ur help appreciated!
Best,
Marius
when tried to build with ant, it failed. so I could not test the sh script. Do you mean using the sh script rapidminer ? Because java -jar ... doesnt work with the path added like that.
br
f
if you download the RapidMiner zip from our website, you should already have a scripts directory. If you have problems with the ant scripts we are also happy to assist you, but please open a new thread for that and supply some more detailed information (which ant target etc.).
Best, Marius
i set the missing variables so i executed the script just to realize it builds the same command wessel suggested. You suggested to execute the linux script: that does NOT work (fails to find the process completely).
So back to square 1.
That is it (the first command here) runs the process ok if all the paths in the process are ABSOLUTE. It ALWAYS fails if any of them is relative.
I think the much missed Gagi zapped this one, here http://rapid-i.com/rapidforum/index.php/topic,2385.0.html . Worth a read as he knew his stuff.
It is important to note that this script is different compared to the windows script.
This script contains lines of code for updating rapid miner and for running processes without the GUI.
Furthermore this script contains lots of code for trying to guess environment variables.
Can you come up with some minimal benchmark that is supposed to work?
E.g. retrieve a file from the repository, normalize the file, and write it back to the repository?
The way I see it there are 3 possible approaches:
1. Somehow modify the script so it also works for relative paths (based on Haddock's comments this should be possible, but for some reason didn't work for me)
2. Write a script that replaces all relative paths to absolute paths
3. Recompile the RapidMinerCommandLine class.
I'll let you know if I get 1 of the 3 working.
Best regards,
Wessel
gagi did not find a solution for dealing with RELATIVE paths ...
he must have worked with absol paths
ad2) thats pretty much what I do now,
ad3) hmmm please go ahead!