Classpathchecker.rb
Here's a handy script I often use in scripts which launch a Java process in order to verify if all the jars on the classpath exist and are readable.
<geshi lang="ruby">
- !/usr/bin/env ruby
- Checks to make sure all the entries on the classpath are valid
- We only want to emit color codes if we're outputting to a terminal. If this is getting piped into grep or less, we'll ignore these
red=STDOUT.isatty ? "\e[1;31m" :"" normal=STDOUT.isatty ? "\e[0;0m" : ""
if ARGV.size == 0 then
cp = ENV['CLASSPATH']
else
cp = ARGV[0]
end
if cp == nil then
STDERR.puts "No CLASSPATH set" exit 1
else
if cp =~ /jar:/ then splitchar = ':' else splitchar = ';' end ret = 0 cp.split(splitchar).each do |file| if !File.readable?(file) then STDERR.puts "Warning: Classpath file #{red}#{file}#{normal} can't be read" ret = 1 end end if ret != 0 then exit ret end
end </geshi>