aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorXu Cheng2015-09-04 16:33:37 +0800
committerXu Cheng2015-09-09 20:44:09 +0800
commit63246fbc6c725d0bc78641a015538a6147ba4058 (patch)
tree52d74014b54936aac3d9ad1d6ff63f15f937e286 /Library
parent657f4ca2ce6230d2e770f501b496b1cbb2cede00 (diff)
downloadbrew-63246fbc6c725d0bc78641a015538a6147ba4058.tar.bz2
config: show all installed JDK
Closes Homebrew/homebrew#43730. Signed-off-by: Xu Cheng <xucheng@me.com>
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/cmd/config.rb14
1 files changed, 7 insertions, 7 deletions
diff --git a/Library/Homebrew/cmd/config.rb b/Library/Homebrew/cmd/config.rb
index a24d9c1cb..9db2c43c6 100644
--- a/Library/Homebrew/cmd/config.rb
+++ b/Library/Homebrew/cmd/config.rb
@@ -1,5 +1,6 @@
require "hardware"
require "software_spec"
+require "rexml/document"
module Homebrew
def config
@@ -118,14 +119,13 @@ module Homebrew
end
def describe_java
- if which("java").nil?
- "N/A"
- elsif !quiet_system "/usr/libexec/java_home", "--failfast"
- "N/A"
- else
- java = `java -version 2>&1`.lines.first.chomp
- java =~ /java version "(.+?)"/ ? $1 : java
+ java_xml = Utils.popen_read("/usr/libexec/java_home", "--xml", "--failfast")
+ return "N/A" unless $?.success?
+ javas = []
+ REXML::XPath.each(REXML::Document.new(java_xml), "//key[text()='JVMVersion']/following-sibling::string") do |item|
+ javas << item.text
end
+ javas.uniq.join(", ")
end
def dump_verbose_config(f = $stdout)