Linux.com

Home Linux Community Forums New to Linux Getting Started with Linux Finding out what command is running a program

Finding out what command is running a program

Link to this post 31 May 11

Is there a way to find out what command is running a program when you click on it and run it graphically? My problem is with an executable jar file. When I right click on it in a graphical environment and choose to run it with the jre it runs fine. However, running java minecraft.jar from the command line results in this error:

Exception in thread "main" java.lang.NoClassDefFoundError: minecraft/jar
Caused by: java.lang.ClassNotFoundException: minecraft.jar
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: minecraft.jar. Program will exit.

I thought this may be a problem with the jar file, but if that is so why would it run with the graphical run method? What I would like is to find out exactly what command clicking "run with Sun Java 6 Runtime" is executing so that the file is working. Once I know that it should be possible to run that command manually, as well as from a .sh file.
Thanks in advance.

EDIT: The problem was simply that I was running the jar with incorrect syntax. The syntax for executable jars is java -jar foo.jar. It would still be nice to know the original question though.

Link to this post 31 May 11

The jar file is sending many commands to java, to see all commands that are being run you can rung "ps -AF" in your terminal, just use grep to filter your results. You can also grep the output of lsof to determine exactly what files are being used by your executable.

Link to this post 31 May 11

I didnt mean for the jar file specificly. Just whenever I say open file with it would be nice to know which command is actually opening that file. Is there a way to do that, besides manually finding out what the commands for that program are?

Link to this post 31 May 11

You can check the file type association in your desired window manager to determine what the default applications are for each file type, you can also use the same tool to set the default and available applications. However without knowing what Linux based distro or window manager you are using I cannot give you the specific instructions to locate the settings.

Please tell us what Linux based distro and or window manager you are using.

Link to this post 01 Jun 11

Sorry, I should have done that in the first place. I am running Ubuntu 11.04 with the default file viewer.

Who we are ?

The Linux Foundation is a non-profit consortium dedicated to the growth of Linux.

More About the foundation...

Frequent Questions

Join / Linux Training / Board