ruby mpxj を使用すると、asta/power プロジェクト ファイルを読み取るときに次のエラーが表示されます。
/var/lib/gems/2.3.0/gems/mpxj-5.2.2/lib/mpxj/reader.rb:24:in `read': Failed to read file: Reading input file started. (RuntimeError)
java.lang.UnsupportedOperationException
at net.sf.mpxj.asta.AstaFileReader.readDatabaseFile(AstaFileReader.java:126)
at net.sf.mpxj.asta.AstaFileReader.read(AstaFileReader.java:74)
at net.sf.mpxj.reader.AbstractProjectReader.read(AbstractProjectReader.java:49)
at net.sf.mpxj.sample.MpxjConvert.process(MpxjConvert.java:81)
at net.sf.mpxj.sample.MpxjConvert.main(MpxjConvert.java:56)
from test.rb:3:in `<main>'
ruby ファイルは次のようになります。
require 'mpxj'
project = MPXJ::Reader.read("asta.pp")
puts "There are #{project.all_tasks.size} tasks in this project"
puts "There are #{project.all_resources.size} resources in this project"
puts "The resources are:"
project.all_resources.each do |resource|
puts resource.name
end
puts "The tasks are:"
project.all_tasks.each do |task|
puts "#{task.name}: starts on #{task.start}, finishes on #{task.finish}, it's duration is #{task.duration}"
end
Asta Project Viewer でプログラムを表示できるため、ファイルが破損していないため、このエラーが表示される理由がわかりません。