Pages: 1 [2] 3
  Print  
Author Topic: [SOLVED] start RM process without GUI with java -jar ?  (Read 2711 times)
fritmore
Jr. Member
**
Posts: 93


« Reply #15 on: May 16, 2012, 04:33:55 PM »

Hi Marius

Quote
On linux you can chmod +x $RAPIDMINER_HOME/scripts/rapidminer and use that script to start RapidMiner headless.

it complained about missing sys variables.
when tried to build with ant, it failed.
Code:
version.get:
init:
[taskdef] Could not load definitions from resource antlib.xml.
...
...
so I could not test the sh script.

Quote
No. If you use the -f parameter, you provide a process file, that means that you use it independent from any repository. Thus RapidMiner has no idea if the process is attached to any repository at all, and even less where in this repository it lives. But it should be possible to start a process like this:
Code:
rapidminer //REPO_NAME/path/to/process

Do you mean using the sh script rapidminer ? Because java -jar ... doesnt work with the path added like that.

br
f
Logged
Marius
Global Moderator
Hero Member
*****
Posts: 1283



WWW
« Reply #16 on: May 16, 2012, 04:45:47 PM »

Hi,

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
Logged

Please add [SOLVED] to the topic title when your problem has been solved! (do so by editing the first post in the thread and modifying the title)
Please click here before posting.
fritmore
Jr. Member
**
Posts: 93


« Reply #17 on: May 16, 2012, 05:10:49 PM »

Hi,

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
will the
Code:
ant build
set all the sys variables so that I can test the sh scripts?
Logged
Marius
Global Moderator
Hero Member
*****
Posts: 1283



WWW
« Reply #18 on: May 16, 2012, 05:47:42 PM »

"ant build" does not set any system variables, it just compiles RapidMiner, but that's not necessary since the zip already contains the rapidminer.jar. Please post the output of the rapidminer sh script, maybe you have to set some variables manually.
Logged

Please add [SOLVED] to the topic title when your problem has been solved! (do so by editing the first post in the thread and modifying the title)
Please click here before posting.
fritmore
Jr. Member
**
Posts: 93


« Reply #19 on: May 16, 2012, 07:07:57 PM »

Marius,

i set the missing variables so i executed the script just to realize it builds the same command wessel suggested.
Code:
java -cp rapidminer.jar com.rapidminer.RapidMinerCommandLine [repository path] -f [process]

You suggested to execute the linux script:
Code:
rapidminer path_to_process/process_name
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.
« Last Edit: May 16, 2012, 07:17:30 PM by fritmore » Logged
haddock
Hero Member
*****
Posts: 837



WWW
« Reply #20 on: May 16, 2012, 07:22:51 PM »

Hi,

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.

Logged

Where is the wisdom we have lost in knowledge?
Where is the knowledge we have lost in information?

T.S.Eliot ~ Choruses from the Rock 1934
wessel
Sr. Member
****
Posts: 484


« Reply #21 on: May 16, 2012, 10:23:45 PM »

I tried to use the rapidminer.no_extension script on Linux, but for me it only works with absolute paths.
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
Logged
fritmore
Jr. Member
**
Posts: 93


« Reply #22 on: May 18, 2012, 11:47:00 AM »

Hi,

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.
sup captain,
gagi did not find a solution for dealing with RELATIVE paths ...
Logged
fritmore
Jr. Member
**
Posts: 93


« Reply #23 on: May 18, 2012, 11:51:47 AM »


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?

yeah Smiley a retrieve operator with relative path set.

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
ad1) gagi did not modded the rapidminer script to be able to resolve the relative path problem
he must have worked with absol paths
ad2) thats pretty much what I do now,
ad3) hmmm please go ahead!

Logged
haddock
Hero Member
*****
Posts: 837



WWW
« Reply #24 on: May 18, 2012, 12:03:59 PM »

I was drawing your attention to...
Quote
seems to me, RM executes your process, but since the process is started from file, it isn't attached to any repository at all. Hence you cannot use relative paths inside the process to access a repository.

Greetings,
  Sebastian

Logged

Where is the wisdom we have lost in knowledge?
Where is the knowledge we have lost in information?

T.S.Eliot ~ Choruses from the Rock 1934
fritmore
Jr. Member
**
Posts: 93


« Reply #25 on: May 18, 2012, 01:44:33 PM »

I was drawing your attention to...

he was talking about a process exported to an XML file
Logged
Marius
Global Moderator
Hero Member
*****
Posts: 1283



WWW
« Reply #26 on: May 18, 2012, 02:51:28 PM »

I finally got my VirtualBox with kubuntu up and running, so I don't have to rely on memories from my days back on linux, and I just can repeat myself:

just use the "rapidminer" script and pass the repository location of the process you want to execute as the first and only parameter (the entry should not contain any spaces since rapidminer seems to have some hicc-ups otherwise). If that does not work, please post the output of that script. My command line looks like this:

Code:
scripts/rapidminer //NewLocalRepository/test/01_test

This works perfectly on a fresh kubuntu installation, and also works with relative paths in the Store and Retrieve operators int the "01_test" process.

If you start an exported xml file which is no longer attached to any repository with the -f parameter, relative paths obviously don't work.

Hope this helps, if not, please post the output of the above mentioned command.

Best, Marius
« Last Edit: May 18, 2012, 03:03:58 PM by Marius » Logged

Please add [SOLVED] to the topic title when your problem has been solved! (do so by editing the first post in the thread and modifying the title)
Please click here before posting.
fritmore
Jr. Member
**
Posts: 93


« Reply #27 on: May 18, 2012, 04:03:16 PM »

WORKS

1.you may need to add some path variables in the sh script /rapidminer_homedir/scripts/rapidminer
most likely RAPIDMINER_HOME="full_path_to_ur_rapidminer_folder" e.g.: RAPIDMINER_HOME="/home/yourname/rapidminer"
2.in the  rapidminer_home/scripts type: sudo chmod a-x rapidminer ( I am not sure if this is completely necessary)
3.finally to launch any process (in rmp format with or without absolute paths in it), still in the script folder type
sh rapidminer //rapidminer_repository_ALIAS/path_to_process/process

This works as well(with this one u may skip steps 1-2) java -cp rapidminer.jar com.rapidminer.RapidMinerCommandLine //rapidminer_repository_ALIAS/path_to_process/process

IMPORTANT
a)//rapidminer_repository_ALIAS means not the repository folder NAME but the alias you gave it (e.g. during installation of RM)
b) rapidminer /fullpath_to_process/process will NOT work
c)process means use only the name do NOT add extension e.g. rmp

If the previous does not work make sure there is repositories.xml file in your .RapidMiner5 folder stating the path to your repository and its alias.

thank you all for helping with the solution Kiss
« Last Edit: August 16, 2012, 12:04:22 PM by fritmore » Logged
Marius
Global Moderator
Hero Member
*****
Posts: 1283



WWW
« Reply #28 on: May 18, 2012, 04:08:30 PM »

Aah, thanks for your last post. This shows us where we can improve our documentation and explanations - basically this had all been written earlier, but obviously there was some confusion about repository names and the file extension.

Have fun with your new headless rapidminer experience Smiley
Logged

Please add [SOLVED] to the topic title when your problem has been solved! (do so by editing the first post in the thread and modifying the title)
Please click here before posting.
fritmore
Jr. Member
**
Posts: 93


« Reply #29 on: May 18, 2012, 04:10:29 PM »

 Grin
Logged
Pages: 1 [2] 3
  Print  
 
Jump to: