Я получаю исключение нулевой точки, и моя оболочка Groovy больше не указывает, где это происходит. говорил, что их было 3, первый из которых произошел на линии scans.each {item ->
Если ты посмеешь ...:
use( groovy.time.TimeCategory ) {
new File( 'C:\\Users\\pro-services\\Documents\\ScanEngineDetailFake.log' ).eachLine { line ->
m = line =~ d
log = line
matcher = (log =~ /\d{2}:\d{2}:\d{2},\d{3}/)
matcher.count.times {
a = matcher[it]
if( a ) {
if( !prevDate ) {
prevDate = parseDate( a )
}
if (line ==~ c){
starts ++
prevDate = parseDate( a )
}
if (line ==~ d){
finishes ++
def nextDate = parseDate( a )
deltas << nextDate - prevDate
scans << line
}
}
}
def startDate = null
def finDate = null
def filediff = null
76 use( groovy.time.TimeCategory ) {
78 scans.each { item ->
logs = item
matcher = (logs =~ /\d{2}:\d{2}:\d{2},\d{3}/)
83 matcher.count.times {
b = matcher[it]
if (logs ==~ c){
startDate = parseDate( b )
}
if (logs ==~ d){
finDate = parseDate( b )
96 filediff = finDate - startDate
deltas.each { diff ->
if (diff == filediff){
n = logs =~ c
println n[0][1]
println diff
}
}
}
}
}
Есть идеи? Я смотрел на другие проблемы с нулевым указателем, но все они кажутся специфичными для кода, поэтому я просто добавлю это в библиотеку.