2016-12-30 61 views
0

我的Java-Maven項目是在Java 1.8中實現的。我已經將我的Maven構建與Fortify SCA集成,通過安裝Fortify並在我的項目的pom.xml中添加依賴項。然而,在掃描過程中,它給了我下面的日誌如何在Fortify SCA中更改Java版本

[INFO] --- sca-maven-plugin:4.30:scan (default-cli) @ projectname --- 
[INFO]     Packaging -> jar 
[INFO]  Top-Level Artifact ID -> null 
[INFO]     Build Label -> projectname-0.1.SNAPSHOT 
[INFO]    Build Version -> 0.1.SNAPSHOT 
[INFO]   Build Project Name -> projectname 
[INFO]      Build ID -> projectname-0.1.SNAPSHOT 
[INFO]     Results File -> /Users/workspaceneon/projectname/target/projectname-0.1.SNAPSHOT.fpr 
[INFO] Location of SCA Executable -> sourceanalyzer 
[INFO]      Scan Log -> /Users/workspaceneon/projectname/target/sca-scan.log 
[INFO]    FindBugs Results -> true 
[INFO]    Fail on Error -> true 
[INFO]    Upload to SSC -> false 
[INFO] Issues will not be tracked and trended without uploading to SSC. 
[INFO] *** !! Scanning individual sub-project - projectname !! *** 
[INFO] Created output dir /Users/workspaceneon/projectname/target 
[INFO] cmd: "/bin/sh -c sourceanalyzer -scan -Xmx800M @/Users/workspaceneon/projectname/target/sca-scan-args.txt" 
Fortify Static Code Analyzer 6.30.0086 
Fortify Static Code Analyzer 6.30.0086 

此外,Java版本據報道

[INFO]    Source Version -> 1.6 

你可以看到我的Fortify的版本在上面的控制檯日誌。

我覺得Fortify正在掃描我的項目,假設它是一個Java 1.6項目。我的問題是,我怎麼能告訴Fortify將它掃描爲1.8項目,並據此報告錯誤?

回答

1

使用命令行參數

-Dfortify.sca.source.version=1.8 

或與Maven:

  1. 在您的項目:

    <fortify.sca.source.version>1.8</fortify.sca.source.version> 
    
  2. 而在Maven的整合:

    <profile> 
    <id>sca-translate</id> 
    <activation> 
        <activeByDefault>false</activeByDefault> 
    </activation> 
    <build> 
        <plugins> 
         <plugin> 
          <groupId>com.fortify.ps.maven.plugin</groupId> 
          <artifactId>${maven-sca-plugin.name}</artifactId> 
          <version>${maven-sca-plugin.version}</version> 
          <inherited>true</inherited> 
          <configuration> 
           <source>${fortify.sca.source.version}</source> 
           <maxHeap>${fortify.sca.Xmx}</maxHeap> 
           <jre64>${fortify.sca.64bit}</jre64> 
           <failOnSCAError>${fortify.failOnError}</failOnSCAError> 
          </configuration> 
          <executions> 
           <execution> 
            <inherited>true</inherited> 
            <id>default-clean</id> 
            <phase>clean</phase> 
            <goals> 
             <goal>clean</goal> 
            </goals> 
           </execution> 
           <execution> 
            <inherited>true</inherited> 
            <id>default-translate</id> 
            <phase>install</phase> 
            <goals> 
             <goal>translate</goal> 
            </goals> 
           </execution> 
          </executions> 
         </plugin> 
        </plugins> 
    </build> 
    

+0

非常感謝。這非常有幫助 – PepperBoy