Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

clover is using java version as 1.4 for some modules

Silvio Lopez January 11, 2018

clover is using java version as 1.4 for some modules and 1.8 for some. We have tried setting version in clover-setup property (source="1.8") in build.xml and other workarounds too but no luck. Although if I am putting the source as 1.8 in javac target, it is working fine but that would not be a correct approach.

[clover] Processing files at 1.8 source level.
[clover] Processing files at 1.4 source level.

2 answers

0 votes
Silvio Lopez January 17, 2018

Hi Grzegorz,

I have set up the clover instr setting as below and my build is picking it as well, check below screenshot

<clover-instr source="1.8" srcdir="${src.dir}"
destdir="${build.classes.dir}">
</clover-instr>

[clover-instr] Updating existing database at '/data/jenkins/workspace/nk_em-dcc-adapter/.clover/clover.db'.
[clover-instr] Processing files at 1.8 source level.
[clover-instr] Clover all over. Instrumented 158 files (15 packages).
[clover-instr] Elapsed time = 4.121 secs. (38.34 files/sec, 13,515.409 srclines/sec)

 but still java is processing at source level 1.4, please check below

  [clover] Updating existing database at '/data/jenkins/workspace/nk_em-dcc-adapter/.clover/clover.db'.
   [clover] Processing files at 1.4 source level.
   [clover] /data/jenkins/workspace/nk_em-dcc-adapter/em-dcc-omnetric-adapter/src/com/emeter/dcc/ami/adm/setdevice/ConfigureAlertBehaviourHandler.java:95:2:unexpected token: private
   [clover] /data/jenkins/workspace/nk_em-dcc-adapter/em-dcc-omnetric-adapter/src/com/emeter/dcc/ami/adm/setdevice/ConfigureAlertBehaviourHandler.java:95:2:unexpected token: private
   [clover] ** Error(s) occurred and the instrumentation process can't continue.

 Please suggest further.. thanks

Grzegorz Lewandowski
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
January 18, 2018

Sorry, but I have troubles reading the snippets you provided, are those 2 separate modules or the same one ? According to the DB location it seems like a single build ?

How do you invoke Ant and how do you invoke Clover within Ant build ?  A snippet including whole Clover-related target would be beneficial.
Generally speaking,  It's a common mistake that people use <ant> or <antcall> to call Clover but don't specify inheritrefs=true, therefore Clover config is lost. 

0 votes
Grzegorz Lewandowski
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
January 16, 2018

What other workarounds have you tried? 

 

What's wrong with setting 1.8 as target source ? Java is mostly backward compatible.

 

I don't think there's an way to tell Clover instrument sources A  with JDK level 4 and sources B with level 8.

The best bet will be to split build process into two parts and compile them in separation. Clover-setup overrides Ant's compiler with its own so I suppose you'd rather would like to use clover-instr target. 

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events