Il mer 7 nov 2018, 19:10 Alan Bateman <alan.bate...@oracle.com> ha scritto:

> On 07/11/2018 16:42, Enrico Olivelli wrote:
> > Hi,
> > I am investigating this case about PowerMock, which is not able to
> > remove the 'final' modifier from a Field
> > https://github.com/powermock/powermock/issues/939
> >
> > Is there any suggested alternate way to remove such modifier ?
> >
> > I understand clearly that it is against how the JVM works and I really
> > appreciate this "change", but this is blocking tests of several
> > projects.
> >
> > The only work-around I see is to not use "final" modifier for things
> > that aren't really "final", but for instance my case is that "in
> > production" I want the field to be treaded as "final" (in particular
> > "final static" initialized with System Properties) but in unit tests I
> > would like to be able to change the value without spawning a new JVM.
> >
> > I did not find any JIRA about this behavioral change, do you have any
> pointer ?
> >
> > If this is the direction (and I totally support it) I will be fine and
> > adapt to the new rules.
> >
> Right, there's no supported way to change static final fields. Have you
> looked into the java agent dropping the final modifier at class load time?
>

Good idea. I will try.
Hopefully 'lazy final static' fields wil help in my case.
I will be back with my findings.

Thanky you
Enrico

>
> -Alan.
>
-- 


-- Enrico Olivelli

Reply via email to