is commons-exec thread safe?

2014-02-13 Thread Leonardo K. Shikida
Is commons-exec thread-safe?

I am asking because ProcessBuilder is not, as stated in
http://docs.oracle.com/javase/7/docs/api/java/lang/ProcessBuilder.html

"*Note that this class is not synchronized.* If multiple threads access a
ProcessBuilder instance concurrently, and at least one of the threads
modifies one of the attributes structurally, it *must* be synchronized
externally."

[]

Leo


[daemon] Can't start jvsc on OSX 10.8

2014-02-13 Thread Amos Anderson
Hello --

I'm trying to start tomcat 7.0.50 on my OSX 10.8 machine following the 
instructions here:
http://tomcat.apache.org/tomcat-7.0-doc/setup.html#Unix_daemon

Version 1.0.15 of the commons daemon was bundled with tomcat. I built jsvc with 
this command:
sudo ./configure 
--with-java=/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home

and then I'm trying to use the daemon.sh script to start the service. My 
catalina log file says:

Cannot find any VM in Java Home 
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home
Cannot locate JVM library file
java_init failed
Service exit with a return value of 1


So I passed the -debug flag to jsvc to see what's happening:

sudo ./daemon.sh --tomcat-user _www --java-home 
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home start

Output is pasted below. It's clear that the problem is that the layout of the 
directories is not what jsvc is expecting:

/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents> ls -l
total 8
drwxrwxr-x   3 root  wheel   102B Feb 13 09:31 MacOS/
drwxrwxr-x  15 root  wheel   510B Dec 18 19:16 Home/
-rw-rw-r--   1 root  wheel   1.5K Dec 18 19:13 Info.plist


Any help?

Thanks!
Amos.





/usr/local/apache-tomcat-7.0.50/bin> sudo ./daemon.sh --tomcat-user _www 
--java-home /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home 
start
+-- DUMPING PARSED COMMAND LINE ARGUMENTS --
| Detach:  True
| Show Version:No
| Show Help:   No
| Check Only:  Disabled
| Stop:False
| Wait:10
| Run as service:  No
| Install service: No
| Remove service:  No
| JVM Name:"null"
| Java Home:   
"/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home"
| PID File:"/usr/local/apache-tomcat-7.0.50/logs/catalina-daemon.pid"
| User Name:   "_www"
| Extra Options:   7
|   
"-Djava.class.path=/usr/local/apache-tomcat-7.0.50/bin/bootstrap.jar:/usr/local/apache-tomcat-7.0.50/bin/commons-daemon.jar:/usr/local/apache-tomcat-7.0.50/bin/tomcat-juli.jar"
|   
"-Djava.util.logging.config.file=/usr/local/apache-tomcat-7.0.50/conf/logging.properties"
|   "-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"
|   "-Djava.endorsed.dirs="
|   "-Dcatalina.base=/usr/local/apache-tomcat-7.0.50"
|   "-Dcatalina.home=/usr/local/apache-tomcat-7.0.50"
|   "-Djava.io.tmpdir=/usr/local/apache-tomcat-7.0.50/temp"
| Class Invoked:   "org.apache.catalina.startup.Bootstrap"
| Class Arguments: 0
+---
user changed to '_www'
User '_www' validated
Attempting to locate Java Home in 
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home
Attempting to locate VM configuration file 
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/jvm.cfg
Found VM configuration file at 
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/jvm.cfg
Found VM server definition in configuration
Checking library 
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/../Libraries/libserver.dylib
Cannot locate library for VM server (skipping)
Found VM client definition in configuration
Checking library 
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/../Libraries/libclient.dylib
Cannot locate library for VM client (skipping)
Found VM hotspot definition in configuration
Checking library 
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/../Libraries/libhotspot.dylib
Cannot locate library for VM hotspot (skipping)
Found VM classic definition in configuration
Checking library 
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/../Libraries/libclassic.dylib
Cannot locate library for VM classic (skipping)
Found VM native definition in configuration
Checking library 
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/../Libraries/libnative.dylib
Cannot locate library for VM native (skipping)
Found VM green definition in configuration
Checking library 
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/../Libraries/libgreen.dylib
Cannot locate library for VM green (skipping)
Java Home located in 
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home
+-- DUMPING JAVA HOME STRUCTURE 
| Java Home:   
"/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home"
| Java VM Config.: 
"/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/jvm.cfg"
| Found JVMs:  0
+---
wait_child 19453
redirecting stdout to /usr/local/apache-tomcat-7.0.50/logs/catalina-daemon.out 
and stderr to &1
-
To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
For additional commands, e-mail: user-h...@commons.apache.org



Conditional Configuration Keys

2014-02-13 Thread DiFrango, Ronald (CONT)
All,

I searched around and could find an answer, I have a set of properties where I 
want to conditionally select them based upon environment variables.  For 
example, I have the following set:

schemas.default=DB
schemas.perf=PERF
schemas.qa=QA
schemas.int=INT

And I would like to do something to the effect of:

If (env.variable == 'qa')
schemas=QA
else If (env.variable == 'perf')
schemas=PERF
else If (env.variable == 'int)
schemas=int
else
schemas=DB

The way I accomplished this today is that I created an AOP interceptor that 
does this work and when the clients request "schema" it does this logic.

My preference would be to handle this during property loading time.  Are there 
any extensions where I could do such a thing?

Thanks,

Ron



The information contained in this e-mail is confidential and/or proprietary to 
Capital One and/or its affiliates. The information transmitted herewith is 
intended only for use by the individual or entity to which it is addressed.  If 
the reader of this message is not the intended recipient, you are hereby 
notified that any review, retransmission, dissemination, distribution, copying 
or other use of, or taking of any action in reliance upon this information is 
strictly prohibited. If you have received this communication in error, please 
contact the sender and delete the material from your computer.


Re: Conditional Configuration Keys

2014-02-13 Thread Oliver Heger
Hi Ron,

Am 13.02.2014 20:53, schrieb DiFrango, Ronald (CONT):
> All,
> 
> I searched around and could find an answer, I have a set of properties where 
> I want to conditionally select them based upon environment variables.  For 
> example, I have the following set:
> 
> schemas.default=DB
> schemas.perf=PERF
> schemas.qa=QA
> schemas.int=INT
> 
> And I would like to do something to the effect of:
> 
> If (env.variable == 'qa')
> schemas=QA
> else If (env.variable == 'perf')
> schemas=PERF
> else If (env.variable == 'int)
> schemas=int
> else
> schemas=DB
> 
> The way I accomplished this today is that I created an AOP interceptor that 
> does this work and when the clients request "schema" it does this logic.
> 
> My preference would be to handle this during property loading time.  Are 
> there any extensions where I could do such a thing?

You might want to have a look at multi-tenant configurations [1]. If I
understand you correctly, this feature solves your problem. It is
possible to access different configuration sources based on interpolated
properties. System properties or environment variables can also be used
to determine the set of properties available.

HTH
Oliver

[1]
http://commons.apache.org/proper/commons-configuration/userguide/howto_multitenant.html#Multi-tenant_Configurations

> 
> Thanks,
> 
> Ron
> 
> 
> 
> The information contained in this e-mail is confidential and/or proprietary 
> to Capital One and/or its affiliates. The information transmitted herewith is 
> intended only for use by the individual or entity to which it is addressed.  
> If the reader of this message is not the intended recipient, you are hereby 
> notified that any review, retransmission, dissemination, distribution, 
> copying or other use of, or taking of any action in reliance upon this 
> information is strictly prohibited. If you have received this communication 
> in error, please contact the sender and delete the material from your 
> computer.
> 

-
To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
For additional commands, e-mail: user-h...@commons.apache.org



RE: Conditional Configuration Keys

2014-02-13 Thread DiFrango, Ronald (CONT)
Oliver,

Thanks for that reference, and while that is somewhat helpful it means that for 
each environment, we still need a separate properties file for each of the 
environments and another one for the common stuff.  Previously, we had 
accomplished this before by conditionally loading files based upon path within 
our XML file like:





My hope was to find a way to do that a little bit more concisely within a 
single file or as I mentioned hooking into the property loading process.

Thanks,

Ron

-Original Message-
From: Oliver Heger [mailto:oliver.he...@oliver-heger.de] 
Sent: Thursday, February 13, 2014 3:14 PM
To: Commons Users List
Subject: Re: Conditional Configuration Keys

Hi Ron,

Am 13.02.2014 20:53, schrieb DiFrango, Ronald (CONT):
> All,
> 
> I searched around and could find an answer, I have a set of properties where 
> I want to conditionally select them based upon environment variables.  For 
> example, I have the following set:
> 
> schemas.default=DB
> schemas.perf=PERF
> schemas.qa=QA
> schemas.int=INT
> 
> And I would like to do something to the effect of:
> 
> If (env.variable == 'qa')
> schemas=QA
> else If (env.variable == 'perf')
> schemas=PERF
> else If (env.variable == 'int)
> schemas=int
> else
> schemas=DB
> 
> The way I accomplished this today is that I created an AOP interceptor that 
> does this work and when the clients request "schema" it does this logic.
> 
> My preference would be to handle this during property loading time.  Are 
> there any extensions where I could do such a thing?

You might want to have a look at multi-tenant configurations [1]. If I 
understand you correctly, this feature solves your problem. It is possible to 
access different configuration sources based on interpolated properties. System 
properties or environment variables can also be used to determine the set of 
properties available.

HTH
Oliver

[1]
http://commons.apache.org/proper/commons-configuration/userguide/howto_multitenant.html#Multi-tenant_Configurations

> 
> Thanks,
> 
> Ron
> 
> 
> 
> The information contained in this e-mail is confidential and/or proprietary 
> to Capital One and/or its affiliates. The information transmitted herewith is 
> intended only for use by the individual or entity to which it is addressed.  
> If the reader of this message is not the intended recipient, you are hereby 
> notified that any review, retransmission, dissemination, distribution, 
> copying or other use of, or taking of any action in reliance upon this 
> information is strictly prohibited. If you have received this communication 
> in error, please contact the sender and delete the material from your 
> computer.
> 

-
To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
For additional commands, e-mail: user-h...@commons.apache.org



The information contained in this e-mail is confidential and/or proprietary to 
Capital One and/or its affiliates. The information transmitted herewith is 
intended only for use by the individual or entity to which it is addressed.  If 
the reader of this message is not the intended recipient, you are hereby 
notified that any review, retransmission, dissemination, distribution, copying 
or other use of, or taking of any action in reliance upon this information is 
strictly prohibited. If you have received this communication in error, please 
contact the sender and delete the material from your computer.


-
To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
For additional commands, e-mail: user-h...@commons.apache.org



Re: Conditional Configuration Keys

2014-02-13 Thread Oliver Heger
Hi Ron,

Am 13.02.2014 21:28, schrieb DiFrango, Ronald (CONT):
> Oliver,
> 
> Thanks for that reference, and while that is somewhat helpful it means that 
> for each environment, we still need a separate properties file for each of 
> the environments and another one for the common stuff.  Previously, we had 
> accomplished this before by conditionally loading files based upon path 
> within our XML file like:
> 
>  
> fileName="${config.root}/test-app/environment/${config.env}/test.properties"
>   listDelimiter="|">
>  
> config-class="org.apache.commons.configuration.reloading.FileChangedReloadingStrategy"
>  />
>   
> 
> My hope was to find a way to do that a little bit more concisely within a 
> single file or as I mentioned hooking into the property loading process.

your current solution based on a DefaultConfigurationBuilder and
interpolated variables is more or less the recommended way for your use
case. I don't think that this can be much improved.

If you only use properties files, an option could be using the include
directive [1] in a clever way. Here you can use variables, too.

There is also the possibility to set an IOFactory on a
PropertiesConfiguration. This factory is used for creating an input
stream to the file to read. But it is more intended for adapting the
format to be parsed and not for selecting different sets of properties.

Oliver

[1]
http://commons.apache.org/proper/commons-configuration/userguide/howto_properties.html#Includes

> 
> Thanks,
> 
> Ron
> 
> -Original Message-
> From: Oliver Heger [mailto:oliver.he...@oliver-heger.de] 
> Sent: Thursday, February 13, 2014 3:14 PM
> To: Commons Users List
> Subject: Re: Conditional Configuration Keys
> 
> Hi Ron,
> 
> Am 13.02.2014 20:53, schrieb DiFrango, Ronald (CONT):
>> All,
>>
>> I searched around and could find an answer, I have a set of properties where 
>> I want to conditionally select them based upon environment variables.  For 
>> example, I have the following set:
>>
>> schemas.default=DB
>> schemas.perf=PERF
>> schemas.qa=QA
>> schemas.int=INT
>>
>> And I would like to do something to the effect of:
>>
>> If (env.variable == 'qa')
>> schemas=QA
>> else If (env.variable == 'perf')
>> schemas=PERF
>> else If (env.variable == 'int)
>> schemas=int
>> else
>> schemas=DB
>>
>> The way I accomplished this today is that I created an AOP interceptor that 
>> does this work and when the clients request "schema" it does this logic.
>>
>> My preference would be to handle this during property loading time.  Are 
>> there any extensions where I could do such a thing?
> 
> You might want to have a look at multi-tenant configurations [1]. If I 
> understand you correctly, this feature solves your problem. It is possible to 
> access different configuration sources based on interpolated properties. 
> System properties or environment variables can also be used to determine the 
> set of properties available.
> 
> HTH
> Oliver
> 
> [1]
> http://commons.apache.org/proper/commons-configuration/userguide/howto_multitenant.html#Multi-tenant_Configurations
> 
>>
>> Thanks,
>>
>> Ron
>>
>> 
>>
>> The information contained in this e-mail is confidential and/or proprietary 
>> to Capital One and/or its affiliates. The information transmitted herewith 
>> is intended only for use by the individual or entity to which it is 
>> addressed.  If the reader of this message is not the intended recipient, you 
>> are hereby notified that any review, retransmission, dissemination, 
>> distribution, copying or other use of, or taking of any action in reliance 
>> upon this information is strictly prohibited. If you have received this 
>> communication in error, please contact the sender and delete the material 
>> from your computer.
>>
> 
> -
> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
> For additional commands, e-mail: user-h...@commons.apache.org
> 
> 
> 
> The information contained in this e-mail is confidential and/or proprietary 
> to Capital One and/or its affiliates. The information transmitted herewith is 
> intended only for use by the individual or entity to which it is addressed.  
> If the reader of this message is not the intended recipient, you are hereby 
> notified that any review, retransmission, dissemination, distribution, 
> copying or other use of, or taking of any action in reliance upon this 
> information is strictly prohibited. If you have received this communication 
> in error, please contact the sender and delete the material from your 
> computer.
> 
> 
> -
> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
> For additional comm

RE: Conditional Configuration Keys

2014-02-13 Thread DiFrango, Ronald (CONT)
Thanks Oliver...I'll continue down that path.

Ron DiFrango
Director/ Architect | Captech  
Solutions Architecture | Team Super Glue (Mobile)
cell: (804) 855-9196| ronald.difra...@capitalone.com



-Original Message-
From: Oliver Heger [mailto:oliver.he...@oliver-heger.de] 
Sent: Thursday, February 13, 2014 3:43 PM
To: Commons Users List
Subject: Re: Conditional Configuration Keys

Hi Ron,

Am 13.02.2014 21:28, schrieb DiFrango, Ronald (CONT):
> Oliver,
> 
> Thanks for that reference, and while that is somewhat helpful it means that 
> for each environment, we still need a separate properties file for each of 
> the environments and another one for the common stuff.  Previously, we had 
> accomplished this before by conditionally loading files based upon path 
> within our XML file like:
> 
>  
> fileName="${config.root}/test-app/environment/${config.env}/test.properties"
>   listDelimiter="|">
>  
> config-class="org.apache.commons.configuration.reloading.FileChangedReloadingStrategy"
>  />
>   
> 
> My hope was to find a way to do that a little bit more concisely within a 
> single file or as I mentioned hooking into the property loading process.

your current solution based on a DefaultConfigurationBuilder and interpolated 
variables is more or less the recommended way for your use case. I don't think 
that this can be much improved.

If you only use properties files, an option could be using the include 
directive [1] in a clever way. Here you can use variables, too.

There is also the possibility to set an IOFactory on a PropertiesConfiguration. 
This factory is used for creating an input stream to the file to read. But it 
is more intended for adapting the format to be parsed and not for selecting 
different sets of properties.

Oliver

[1]
http://commons.apache.org/proper/commons-configuration/userguide/howto_properties.html#Includes

> 
> Thanks,
> 
> Ron
> 
> -Original Message-
> From: Oliver Heger [mailto:oliver.he...@oliver-heger.de]
> Sent: Thursday, February 13, 2014 3:14 PM
> To: Commons Users List
> Subject: Re: Conditional Configuration Keys
> 
> Hi Ron,
> 
> Am 13.02.2014 20:53, schrieb DiFrango, Ronald (CONT):
>> All,
>>
>> I searched around and could find an answer, I have a set of properties where 
>> I want to conditionally select them based upon environment variables.  For 
>> example, I have the following set:
>>
>> schemas.default=DB
>> schemas.perf=PERF
>> schemas.qa=QA
>> schemas.int=INT
>>
>> And I would like to do something to the effect of:
>>
>> If (env.variable == 'qa')
>> schemas=QA
>> else If (env.variable == 'perf')
>> schemas=PERF
>> else If (env.variable == 'int)
>> schemas=int
>> else
>> schemas=DB
>>
>> The way I accomplished this today is that I created an AOP interceptor that 
>> does this work and when the clients request "schema" it does this logic.
>>
>> My preference would be to handle this during property loading time.  Are 
>> there any extensions where I could do such a thing?
> 
> You might want to have a look at multi-tenant configurations [1]. If I 
> understand you correctly, this feature solves your problem. It is possible to 
> access different configuration sources based on interpolated properties. 
> System properties or environment variables can also be used to determine the 
> set of properties available.
> 
> HTH
> Oliver
> 
> [1]
> http://commons.apache.org/proper/commons-configuration/userguide/howto
> _multitenant.html#Multi-tenant_Configurations
> 
>>
>> Thanks,
>>
>> Ron
>>
>> 
>>
>> The information contained in this e-mail is confidential and/or proprietary 
>> to Capital One and/or its affiliates. The information transmitted herewith 
>> is intended only for use by the individual or entity to which it is 
>> addressed.  If the reader of this message is not the intended recipient, you 
>> are hereby notified that any review, retransmission, dissemination, 
>> distribution, copying or other use of, or taking of any action in reliance 
>> upon this information is strictly prohibited. If you have received this 
>> communication in error, please contact the sender and delete the material 
>> from your computer.
>>
> 
> -
> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
> For additional commands, e-mail: user-h...@commons.apache.org
> 
> 
> 
> The information contained in this e-mail is confidential and/or proprietary 
> to Capital One and/or its affiliates. The information transmitted herewith is 
> intended only for use by the individual or entity to which it is addressed.  
> If the reader of this message is not the intended recipient, you are hereby 
> notified that any review, retransmission, dissemination, distribution,

Re: [daemon] Can't start jvsc on OSX 10.8

2014-02-13 Thread Ian Emmons
This bug (#281, see URL below) has been fixed and the fix has been committed.  
However, there has been no release since that time.

https://issues.apache.org/jira/browse/DAEMON-281


On Feb 13, 2014, at 2:30 PM, Amos Anderson  wrote:
> Hello --
> 
> I'm trying to start tomcat 7.0.50 on my OSX 10.8 machine following the 
> instructions here:
> http://tomcat.apache.org/tomcat-7.0-doc/setup.html#Unix_daemon
> 
> Version 1.0.15 of the commons daemon was bundled with tomcat. I built jsvc 
> with this command:
> sudo ./configure 
> --with-java=/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home
> 
> and then I'm trying to use the daemon.sh script to start the service. My 
> catalina log file says:
> 
> Cannot find any VM in Java Home 
> /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home
> Cannot locate JVM library file
> java_init failed
> Service exit with a return value of 1
> 
> 
> So I passed the -debug flag to jsvc to see what's happening:
> 
> sudo ./daemon.sh --tomcat-user _www --java-home 
> /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home start
> 
> Output is pasted below. It's clear that the problem is that the layout of the 
> directories is not what jsvc is expecting:
> 
> /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents> ls -l
> total 8
> drwxrwxr-x   3 root  wheel   102B Feb 13 09:31 MacOS/
> drwxrwxr-x  15 root  wheel   510B Dec 18 19:16 Home/
> -rw-rw-r--   1 root  wheel   1.5K Dec 18 19:13 Info.plist
> 
> 
> Any help?
> 
> Thanks!
> Amos.
> 
> 
> 
> 
> 
> /usr/local/apache-tomcat-7.0.50/bin> sudo ./daemon.sh --tomcat-user _www 
> --java-home /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home 
> start
> +-- DUMPING PARSED COMMAND LINE ARGUMENTS --
> | Detach:  True
> | Show Version:No
> | Show Help:   No
> | Check Only:  Disabled
> | Stop:False
> | Wait:10
> | Run as service:  No
> | Install service: No
> | Remove service:  No
> | JVM Name:"null"
> | Java Home:   
> "/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home"
> | PID File:"/usr/local/apache-tomcat-7.0.50/logs/catalina-daemon.pid"
> | User Name:   "_www"
> | Extra Options:   7
> |   
> "-Djava.class.path=/usr/local/apache-tomcat-7.0.50/bin/bootstrap.jar:/usr/local/apache-tomcat-7.0.50/bin/commons-daemon.jar:/usr/local/apache-tomcat-7.0.50/bin/tomcat-juli.jar"
> |   
> "-Djava.util.logging.config.file=/usr/local/apache-tomcat-7.0.50/conf/logging.properties"
> |   "-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"
> |   "-Djava.endorsed.dirs="
> |   "-Dcatalina.base=/usr/local/apache-tomcat-7.0.50"
> |   "-Dcatalina.home=/usr/local/apache-tomcat-7.0.50"
> |   "-Djava.io.tmpdir=/usr/local/apache-tomcat-7.0.50/temp"
> | Class Invoked:   "org.apache.catalina.startup.Bootstrap"
> | Class Arguments: 0
> +---
> user changed to '_www'
> User '_www' validated
> Attempting to locate Java Home in 
> /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home
> Attempting to locate VM configuration file 
> /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/jvm.cfg
> Found VM configuration file at 
> /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/jvm.cfg
> Found VM server definition in configuration
> Checking library 
> /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/../Libraries/libserver.dylib
> Cannot locate library for VM server (skipping)
> Found VM client definition in configuration
> Checking library 
> /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/../Libraries/libclient.dylib
> Cannot locate library for VM client (skipping)
> Found VM hotspot definition in configuration
> Checking library 
> /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/../Libraries/libhotspot.dylib
> Cannot locate library for VM hotspot (skipping)
> Found VM classic definition in configuration
> Checking library 
> /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/../Libraries/libclassic.dylib
> Cannot locate library for VM classic (skipping)
> Found VM native definition in configuration
> Checking library 
> /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/../Libraries/libnative.dylib
> Cannot locate library for VM native (skipping)
> Found VM green definition in configuration
> Checking library 
> /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/../Libraries/libgreen.dylib
> Cannot locate library for VM green (skipping)
> Java Home located in 
> /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home
> +-- DUMPING JAVA HOME STRUCTURE 
> | Java Home:   
> "/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home"
> | Java VM Config.: 
> "/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/jvm.cfg"
> | Found JVMs:  0
> +-