Does HtmlReporter --sourcepath take multiple sourcepaths?

I tried the semicolon-separated sourcepaths based on your previous reply on https://answers.atlassian.com/questions/251117, but it doesn't seem working. Could you please verify that?

Thanks,

1 answer

0 votes

Yes, of course, it supports multiple source paths. In my comment posted here I had a spelling mistake (quotes were missing for -p; I just updated it).

Please check if you put your source paths in quotes, otherwise a semicolon between paths will be treated as a separator of a unix command. 

Correct (Windows):

java ... HtmlReporter --sourcepath "path1;path2;path3"

Correct (Linux):

java ... HtmlReporter --sourcepath "path1:path2:path3"

Wrong (on Linux the ';' will separate a command):

java ... HtmlReporter --sourcepath path1;path2;path3

 

I have tried HtmlReporter --sourcepath "path1" and HtmlReporter --sourcepath "path2", and both worked. But HtmlReporter --sourcepath "path1;path2" didn't.

 

I reviewed the source code of com/atlassian/clover/reporters/CommandLineArgProcessors.java. It doesn't seem taking semicolon-separated paths.

-----------------------------------

cfg.setSourcepath(new Path(args[++i]));

-----------------------------------

I'm using clover-4.0.6.jar.

Could you please check?

Thanks,

Path.java:

/**
 * Constructs a chain of paths from <pre>osPathString</pre> using a default platform path separator
 * (i.e. the File.pathSeparator value). All file separators within a path are being normalized to
 * have unix-style endings.
 * @see #Path(String, String)
 */
public Path(String osPathString) {
    this(osPathString, File.pathSeparator);
}

/**
 * Constructs a chain of paths from <pre>osPathString</pre> using a specified <pre>pathSep</pre>
 * path separator. All file separators within a path are being normalized to have unix-style endings.
 *
 * Example:
 * <pre>
 *    new Path("/my/path1:\my\path2", ":")
 * will internally keep
 *      /my/path1
 *      /my/path2
 * </pre>
 */
public Path(String osPathString, String pathSep) {
    for (StringTokenizer pt = new StringTokenizer(osPathString, pathSep); pt.hasMoreTokens();) {
        elements.add(FileUtils.getNormalizedPath(pt.nextToken()));
    }
}

 

Did you use a proper path separator? On Windows it is ';', on Linux it is ':'.


This is it. Colon ':' works.

HtmlReporter --sourcepath "path1:path2"

Thanks!

Suggest an answer

Log in or Join to answer
Community showcase
Teodora [Botron]
Published Feb 15, 2018 in Marketplace Apps

Jira Inferno: The Nine Circles of Jira Administration Hell

If you spend enough time as a Jira admin - whether you are managing a single, mid-sized instance, a large enterprise one or juggling multiple instances at once - you will eventually find yourself in ...

1,007 views 5 18
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you
Atlassian Team Tour

Join us on the Team Tour

We're bringing product updates and pro tips on teamwork to ten cities around the world.

Save your spot