2013-03-09 2 views
6

Я изменил пару классов в своем проекте Grails и создал военный файл. Затем я сравнил файлы .class от новой войны с войной, которая была построена до моих изменений (на другой машине, если это имеет значение), и получается, что многие (если не все) .class-файлы разные. Глядя на декомпилированных классов, кажется, что различия из-за временной метки в таких переменных, как это:neverHappen переменная в скомпилированных классах

public static long __timeStamp__239_neverHappen1360886953029; 

Кто-нибудь знает, что эта переменная?

+0

выглядит как временная метка время, когда класс был составлен (или, когда война была построена) ... – zoran119

ответ

3

Это прибыльное поколение классов.

Смотрите некоторые обсуждения здесь http://groovy.329449.n5.nabble.com/Timestamp-in-class-files-leads-to-huge-patches-td365696.html

Для полноты картины, цитируемой здесь: -

Для собственного механизма перекомпиляции Groovy,. Источники не всегда находятся в форме файла , поэтому мы не можем «просто» проверить временную метку файла, поэтому нам пришлось хранить эту метку где-то ... и где лучше, чем в классе , так как это все, что у нас есть?

вт, 3 марта 2009 в 10:39, Джейсон Dillon < [скрытый адрес электронной почты]> писал:

Почему groovyc захватить метку времени компиляции? Для чего это полезно?

Смежные вопросы