<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.lingoport.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mheilner</id>
	<title>Lingoport Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.lingoport.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mheilner"/>
	<link rel="alternate" type="text/html" href="https://wiki.lingoport.com/Special:Contributions/Mheilner"/>
	<updated>2026-04-30T22:12:38Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>https://wiki.lingoport.com/index.php?title=MVN_Plugin&amp;diff=88594</id>
		<title>MVN Plugin</title>
		<link rel="alternate" type="text/html" href="https://wiki.lingoport.com/index.php?title=MVN_Plugin&amp;diff=88594"/>
		<updated>2016-09-27T18:28:03Z</updated>

		<summary type="html">&lt;p&gt;Mheilner: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Globalyzer has a number of clients: The Workbench, the command line interface, Lite, the Ant client, and the MVN plugin. When using a MVN project, you can add code scanning with Globalyzer using our MVN plugin. &lt;br /&gt;
It is well suited for use within automation routines and Continuous Integration (CI) systems as well as within a typical developer environment, for instance within an Integrated Development Environments (IDEs).&lt;br /&gt;
&lt;br /&gt;
The Globalyzer MVN plugin generates scan reports to a directory specified the pom.xml file. Scan reports are available in a variety of formats. We ask our MVN customers to install the MVN plugin in a private MVN repository for that company. &lt;br /&gt;
&lt;br /&gt;
The steps to use the Globalyzer MVN plugin are the same as any MVN plugin:&lt;br /&gt;
* Install the plugin&lt;br /&gt;
* Configure the pom.xml&lt;br /&gt;
* Run MVN&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Install the Globalyzer MVN Plugin ==&lt;br /&gt;
&lt;br /&gt;
For those customers who require the MVN plugin, we make the globalyzer-maven-plugin-x.y.z-jar-with-dependencies.jar file available for downloadm where x.y.z is the version for the plugin, for instance 5.2.1. We ask that this jar file be installed in a private MVN repository at the customer&#039;s side.&lt;br /&gt;
You first need to get the file from a secure FTP location, which will be sent to customers who request it. Lingoport customers can request the MVN plugin by sending an email to &amp;lt;code&amp;gt;support at lingoport dot com&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example, a developer who wants to install the plugin in their local .m2 repository can use the following installation command, provided for a version &amp;lt;code&amp;gt;5.2.1&amp;lt;/code&amp;gt; of the MVN plugin. The same applies to other versions.t&lt;br /&gt;
&lt;br /&gt;
  C:\Users\Yourname&amp;gt;&#039;&#039;&#039;mvn install:install-file&#039;&#039;&#039; -Dfile=&amp;quot;C:\Path\to\the\plugin\jarfile\&#039;&#039;&#039;globalyzer-maven-plugin-5.2.1-jar-with-dependencies.jar&#039;&#039;&#039;&amp;quot; -DgroupId=&#039;&#039;&#039;com.lingoport.globalyzer.client.maven&#039;&#039;&#039; -DartifactId=&#039;&#039;&#039;globalyzer-maven-plugin&#039;&#039;&#039; -Dversion=&#039;&#039;&#039;5.2.1&#039;&#039;&#039; -Dpackaging=&#039;&#039;&#039;maven-plugin&#039;&#039;&#039;&lt;br /&gt;
  [INFO] Scanning for projects...&lt;br /&gt;
  [INFO]&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO] Building Maven Stub Project (No POM) 1&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO]&lt;br /&gt;
  [INFO] --- maven-install-plugin:2.4:install-file (default-cli) @ standalone-pom ---&lt;br /&gt;
  [INFO] Installing C:\Linternal\Installers\install\globalyzer-maven-plugin-5.2.1.jar to C:\Users\Yourname\.m2\repository\com\lingoport\globalyzer\client\maven\globalyzer-maven-plugin\5.2.1\globalyzer-maven-plugin-5.2.1.jar&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO] BUILD SUCCESS&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO] Total time: 0.615 s&lt;br /&gt;
  [INFO] Finished at: 2016-09-09T15:49:59-06:00&lt;br /&gt;
  [INFO] Final Memory: 7M/123M&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Configure the Globalyzer MVN Plugin ==&lt;br /&gt;
The &amp;lt;code&amp;gt;&amp;lt;build&amp;gt;&amp;lt;plugins&amp;gt;&amp;lt;/code&amp;gt; section of your module&#039;s pom.xml file must be configured. Here is how:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;plugin&amp;gt;&lt;br /&gt;
  &amp;lt;groupId&amp;gt;com.lingoport.globalyzer.client.maven&amp;lt;/groupId&amp;gt;&lt;br /&gt;
  &amp;lt;artifactId&amp;gt;globalyzer-maven-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;
  &amp;lt;version&amp;gt;5.2.1&amp;lt;/version&amp;gt;&lt;br /&gt;
  &amp;lt;configuration&amp;gt;&lt;br /&gt;
      &#039;&#039;&#039;-required - &#039;&#039;&#039;&lt;br /&gt;
           &#039;&#039;&#039;- session level settings - &#039;&#039;&#039;&lt;br /&gt;
           &amp;lt;username&amp;gt;joe@company.com&amp;lt;/username&amp;gt;&lt;br /&gt;
           &amp;lt;password&amp;gt;joespw&amp;lt;/password&amp;gt;&lt;br /&gt;
           &#039;&#039;&#039;- scan level settings - &#039;&#039;&#039;&lt;br /&gt;
           &amp;lt;ruleSetName&amp;gt;Java Rule Set&amp;lt;/ruleSetName&amp;gt;&lt;br /&gt;
      &#039;&#039;&#039;-optional -&#039;&#039;&#039;&lt;br /&gt;
           &#039;&#039;&#039;- session level settings -&#039;&#039;&#039;&lt;br /&gt;
           &amp;lt;serverUrl&amp;gt;&amp;lt;/serverUrl&amp;gt;  (default: https://www.globalyzer.com/gzserver)     &lt;br /&gt;
           &amp;lt;dataDictionaryDir&amp;gt;&amp;lt;/dataDictionaryDir&amp;gt;  ( default: userhome/.globalyzer )&lt;br /&gt;
           &amp;lt;scanTimeout&amp;gt;&amp;lt;/scanTimeout&amp;gt;  ( default: 120 seconds )&lt;br /&gt;
           &amp;lt;filterWithDictionary&amp;gt;&amp;lt;/filterWithDictionary&amp;gt; ( default: true )&lt;br /&gt;
           &amp;lt;setLog4jProperties&amp;gt;&amp;lt;/setLog4jProperties&amp;gt;  ( default: true )&lt;br /&gt;
           &amp;lt;log4jPropertiesFileDir&amp;gt;&amp;lt;/log4jPropertiesFileDir&amp;gt; ( default: Globalyzer provided )        &lt;br /&gt;
           &#039;&#039;&#039;- scan level settings -&#039;&#039;&#039;    &lt;br /&gt;
           &amp;lt;projectName&amp;gt;&amp;lt;/projectName&amp;gt;  ( default: project artifact )    &lt;br /&gt;
           &amp;lt;projectDir&amp;gt;&amp;lt;/projectDir&amp;gt;  ( default: project src/main/java )&lt;br /&gt;
           &amp;lt;ruleSetOwner&amp;gt;&amp;lt;/ruleSetOwner&amp;gt;  ( default: username )&lt;br /&gt;
           &amp;lt;scanName&amp;gt;&amp;lt;/scanName&amp;gt;  ( default: auto-generate ) &lt;br /&gt;
           &amp;lt;!-- choices:                     --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanDetailedXML        --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanDetailedExcel      --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanDetailedCSV        --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanSummaryHtml        --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanSummaryText        --&amp;gt;&lt;br /&gt;
           &amp;lt;reportType&amp;gt;&amp;lt;/reportType&amp;gt;  ( default: ScanDetailedXML )&lt;br /&gt;
           &amp;lt;reportPath&amp;gt;&amp;lt;/reportPath&amp;gt;  ( default: target/i18n )        &lt;br /&gt;
  &amp;lt;/configuration&amp;gt;&lt;br /&gt;
  &amp;lt;/plugin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notes: &lt;br /&gt;
* The session level settings are set once per MVN invocation. Whichever scan / project goal is executed first, its configuration will be set for all the subsequent scans&lt;br /&gt;
* The &amp;lt;code&amp;gt;log4jPropertiesFileDir&amp;lt;/code&amp;gt; is precisely that: which log4j &amp;lt;b&amp;gt;configuration&amp;lt;/b&amp;gt; file to use is the &amp;lt;code&amp;gt;setLog4jProperties/code&amp;gt; is set to true. For for example, if that setting points to &amp;lt;code&amp;gt;/path/to/log4j.properties&amp;lt;/code&amp;gt; and in that configuration, the appender points to &amp;lt;code&amp;gt;/path/to/globalyzer/log&amp;lt;/code&amp;gt;, that&#039;s where the logs will be written out.&lt;br /&gt;
* Best would be to have the &amp;lt;b&amp;gt;exact same configuration&amp;lt;/b&amp;gt; for all Globalyzer goals to make sure one configuration is not taking over the other ones.&lt;br /&gt;
&lt;br /&gt;
== Running Globalyzer MVN Plugin From The Command Prompt / Shell ==&lt;br /&gt;
&lt;br /&gt;
Globalyzer MVN Plugin can be executed from a command prompt or shell via the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn com.lingoport.globalyzer.client.maven:globalyzer-maven-plugin:5.2.1:scan&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After MVN finishes each scan, a Globalyzer report per scan is created at the location specified in the pom.xml report path. The default location for the reports are target/i18n for each MVN module.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you have configured the execution to be in the &amp;lt;code&amp;gt;validate&amp;lt;/code&amp;gt; phase, you can run the simpler command: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn validate&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(See the multi-scan example below)&lt;br /&gt;
&lt;br /&gt;
== Multi-Threaded Support ==&lt;br /&gt;
The Globalyzer MVN plugin supports multi-threaded invocation. For instance, on multi-module projects, use the -T option. For instance:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn com.lingoport.globalyzer.client.maven:globalyzer-maven-plugin:5.2.1:scan -Pglobalyzer -T1.0C&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you have configured the execution to be in the &amp;lt;code&amp;gt;validate&amp;lt;/code&amp;gt; phase, you can run the simpler command: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn validate -T1.0C&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(See the multi-scan example below)&lt;br /&gt;
&lt;br /&gt;
== Multi-Scan Projects ==&lt;br /&gt;
&lt;br /&gt;
To execute more than one scan on a MVN project, use as many &amp;quot;execution&amp;quot; as you have rule sets to apply to scan the code. For instance, two scans will be performed with the following snippet, one using the &amp;lt;code&amp;gt;testjava&amp;lt;/code&amp;gt; rule set, the other using the &amp;lt;code&amp;gt;testjavascript&amp;lt;/code&amp;gt; rule set:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;plugin&amp;gt;&lt;br /&gt;
        &amp;lt;groupId&amp;gt;com.lingoport.globalyzer.client.maven&amp;lt;/groupId&amp;gt;&lt;br /&gt;
        &amp;lt;artifactId&amp;gt;globalyzer-maven-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;
        &amp;lt;version&amp;gt;5.2.1&amp;lt;/version&amp;gt;&lt;br /&gt;
        &amp;lt;executions&amp;gt;&lt;br /&gt;
          &amp;lt;execution&amp;gt;&lt;br /&gt;
            &#039;&#039;&#039;&amp;lt;id&amp;gt;execution1&amp;lt;/id&amp;gt;&lt;br /&gt;
            &amp;lt;phase&amp;gt;validate&amp;lt;/phase&#039;&#039;&#039;&amp;gt;&lt;br /&gt;
              &amp;lt;configuration&amp;gt;&lt;br /&gt;
              &amp;lt;username&amp;gt;bob@yourcompany.com&amp;lt;/username&amp;gt;&lt;br /&gt;
              &amp;lt;password&amp;gt;bobpassword&amp;lt;/password&amp;gt;&lt;br /&gt;
              &#039;&#039;&#039;&amp;lt;ruleSetName&amp;gt;testjava&amp;lt;/ruleSetName&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;scanName&amp;gt;java-report&amp;lt;/scanName&amp;gt;&lt;br /&gt;
              &amp;lt;/configuration&amp;gt;&lt;br /&gt;
               &amp;lt;goals&amp;gt;&lt;br /&gt;
                  &#039;&#039;&#039;&amp;lt;goal&amp;gt;scan&amp;lt;/goal&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;/goals&amp;gt;            &lt;br /&gt;
          &amp;lt;/execution&amp;gt;&lt;br /&gt;
          &amp;lt;execution&amp;gt;&lt;br /&gt;
          &#039;&#039;&#039;&amp;lt;id&amp;gt;execution2&amp;lt;/id&amp;gt;&lt;br /&gt;
           &amp;lt;phase&amp;gt;validate&amp;lt;/phase&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
            &amp;lt;configuration&amp;gt;&lt;br /&gt;
              &amp;lt;username&amp;gt;bob@yourcompany.com&amp;lt;/username&amp;gt;&lt;br /&gt;
              &amp;lt;password&amp;gt;bobpassword&amp;lt;/password&amp;gt;&lt;br /&gt;
              &#039;&#039;&#039;&amp;lt;ruleSetName&amp;gt;testjavascript&amp;lt;/ruleSetName&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;scanName&amp;gt;javascript-report&amp;lt;/scanName&amp;gt;&lt;br /&gt;
             &amp;lt;/configuration&amp;gt;&lt;br /&gt;
             &amp;lt;goals&amp;gt;&lt;br /&gt;
               &#039;&#039;&#039;&amp;lt;goal&amp;gt;scan&amp;lt;/goal&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
             &amp;lt;/goals&amp;gt;&lt;br /&gt;
          &amp;lt;/execution&amp;gt;&lt;br /&gt;
        &amp;lt;/executions&amp;gt;                  &lt;br /&gt;
  &amp;lt;/plugin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Sharing pom.xml Files Between IDEs and Build Systems ==&lt;br /&gt;
&lt;br /&gt;
It is common to check in a single &amp;lt;code&amp;gt;pom.xml&amp;lt;/code&amp;gt; per code repository. However, some configuration on a developer&#039;s laptop may be different from a build system.&lt;br /&gt;
&lt;br /&gt;
A possibility to bridge the environment is to keep the most Globalyzer specific configuration only in the pom.xml file and to move the system side in the settings.xml file.&lt;/div&gt;</summary>
		<author><name>Mheilner</name></author>
	</entry>
	<entry>
		<id>https://wiki.lingoport.com/index.php?title=MVN_Plugin&amp;diff=88593</id>
		<title>MVN Plugin</title>
		<link rel="alternate" type="text/html" href="https://wiki.lingoport.com/index.php?title=MVN_Plugin&amp;diff=88593"/>
		<updated>2016-09-27T18:27:35Z</updated>

		<summary type="html">&lt;p&gt;Mheilner: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Globalyzer has a number of clients: The Workbench, the command line interface, Lite, the Ant client, and the MVN plugin. When using a MVN project, you can add code scanning with Globalyzer using our MVN plugin. &lt;br /&gt;
It is well suited for use within automation routines and Continuous Integration (CI) systems as well as within a typical developer environment, for instance within an Integrated Development Environments (IDEs).&lt;br /&gt;
&lt;br /&gt;
The Globalyzer MVN plugin generates scan reports to a directory specified the pom.xml file. Scan reports are available in a variety of formats. We ask our MVN customers to install the MVN plugin in a private MVN repository for that company. &lt;br /&gt;
&lt;br /&gt;
The steps to use the Globalyzer MVN plugin are the same as any MVN plugin:&lt;br /&gt;
* Install the plugin&lt;br /&gt;
* Configure the pom.xml&lt;br /&gt;
* Run MVN&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Install the Globalyzer MVN Plugin ==&lt;br /&gt;
&lt;br /&gt;
For those customers who require the MVN plugin, we make the globalyzer-maven-plugin-x.y.z-jar-with-dependencies.jar file available for downloadm where x.y.z is the version for the plugin, for instance 5.2.1. We ask that this jar file be installed in a private MVN repository at the customer&#039;s side.&lt;br /&gt;
You first need to get the file from a secure FTP location, which will be sent to customers who request it. Lingoport customers can request the MVN plugin by sending an email to &amp;lt;code&amp;gt;support at lingoport dot com&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example, a developer who wants to install the plugin in their local .m2 repository can use the following installation command, provided for a version &amp;lt;code&amp;gt;5.2.1&amp;lt;/code&amp;gt; of the MVN plugin. The same applies to other versions.t&lt;br /&gt;
&lt;br /&gt;
  C:\Users\Yourname&amp;gt;&#039;&#039;&#039;mvn install:install-file&#039;&#039;&#039; -Dfile=&amp;quot;C:\Path\to\the\plugin\jarfile\&#039;&#039;&#039;globalyzer-maven-plugin-5.2.1-jar-with-dependencies.jar&#039;&#039;&#039;&amp;quot; -DgroupId=&#039;&#039;&#039;com.lingoport.globalyzer.client.maven&#039;&#039;&#039; -DartifactId=&#039;&#039;&#039;globalyzer-maven-plugin&#039;&#039;&#039; -Dversion=&#039;&#039;&#039;5.2.1&#039;&#039;&#039; -Dpackaging=&#039;&#039;&#039;maven-plugin&#039;&#039;&#039;&lt;br /&gt;
  [INFO] Scanning for projects...&lt;br /&gt;
  [INFO]&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO] Building Maven Stub Project (No POM) 1&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO]&lt;br /&gt;
  [INFO] --- maven-install-plugin:2.4:install-file (default-cli) @ standalone-pom ---&lt;br /&gt;
  [INFO] Installing C:\Linternal\Installers\install\globalyzer-maven-plugin-5.2.1.jar to C:\Users\Yourname\.m2\repository\com\lingoport\globalyzer\client\maven\globalyzer-maven-plugin\5.2.1\globalyzer-maven-plugin-5.2.1.jar&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO] BUILD SUCCESS&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO] Total time: 0.615 s&lt;br /&gt;
  [INFO] Finished at: 2016-09-09T15:49:59-06:00&lt;br /&gt;
  [INFO] Final Memory: 7M/123M&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Configure the Globalyzer MVN Plugin ==&lt;br /&gt;
The &amp;lt;code&amp;gt;&amp;lt;build&amp;gt;&amp;lt;plugins&amp;gt;&amp;lt;/code&amp;gt; section of your module&#039;s pom.xml file must be configured. Here is how:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;plugin&amp;gt;&lt;br /&gt;
  &amp;lt;groupId&amp;gt;com.lingoport.globalyzer.client.maven&amp;lt;/groupId&amp;gt;&lt;br /&gt;
  &amp;lt;artifactId&amp;gt;globalyzer-maven-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;
  &amp;lt;version&amp;gt;5.2.1&amp;lt;/version&amp;gt;&lt;br /&gt;
  &amp;lt;configuration&amp;gt;&lt;br /&gt;
      &#039;&#039;&#039;-required - &#039;&#039;&#039;&lt;br /&gt;
           &#039;&#039;&#039;- session level settings - &#039;&#039;&#039;&lt;br /&gt;
           &amp;lt;username&amp;gt;joe@company.com&amp;lt;/username&amp;gt;&lt;br /&gt;
           &amp;lt;password&amp;gt;joespw&amp;lt;/password&amp;gt;&lt;br /&gt;
           &#039;&#039;&#039;- scan level settings - &#039;&#039;&#039;&lt;br /&gt;
           &amp;lt;ruleSetName&amp;gt;Java Rule Set&amp;lt;/ruleSetName&amp;gt;&lt;br /&gt;
      &#039;&#039;&#039;-optional -&#039;&#039;&#039;&lt;br /&gt;
           &#039;&#039;&#039;- session level settings -&#039;&#039;&#039;&lt;br /&gt;
           &amp;lt;serverUrl&amp;gt;&amp;lt;/serverUrl&amp;gt;  (default: https://www.globalyzer.com/gzserver)     &lt;br /&gt;
           &amp;lt;dataDictionaryDir&amp;gt;&amp;lt;/dataDictionaryDir&amp;gt;  ( default: userhome/.globalyzer )&lt;br /&gt;
           &amp;lt;scanTimeout&amp;gt;&amp;lt;/scanTimeout&amp;gt;  ( default: 120 seconds )&lt;br /&gt;
           &amp;lt;filterWithDictionary&amp;gt;&amp;lt;/filterWithDictionary&amp;gt; ( default: true )&lt;br /&gt;
           &amp;lt;setLog4jProperties&amp;gt;&amp;lt;/setLog4jProperties&amp;gt;  ( default: true )&lt;br /&gt;
           &amp;lt;log4jPropertiesFileDir&amp;gt;&amp;lt;/log4jPropertiesFileDir&amp;gt; ( default: Globalyzer provided )        &lt;br /&gt;
           &#039;&#039;&#039;- scan level settings -&#039;&#039;&#039;    &lt;br /&gt;
           &amp;lt;projectName&amp;gt;&amp;lt;/projectName&amp;gt;  ( default: project artifact )    &lt;br /&gt;
           &amp;lt;projectDir&amp;gt;&amp;lt;/projectDir&amp;gt;  ( default: project src/main/java )&lt;br /&gt;
           &amp;lt;ruleSetOwner&amp;gt;&amp;lt;/ruleSetOwner&amp;gt;  ( default: username )&lt;br /&gt;
           &amp;lt;scanName&amp;gt;&amp;lt;/scanName&amp;gt;  ( default: auto-generate ) &lt;br /&gt;
           &amp;lt;!-- choices:                     --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanDetailedXML        --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanDetailedExcel      --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanDetailedCSV        --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanSummaryHtml        --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanSummaryText        --&amp;gt;&lt;br /&gt;
           &amp;lt;reportType&amp;gt;&amp;lt;/reportType&amp;gt;  ( default: ScanDetailedXML )&lt;br /&gt;
           &amp;lt;reportPath&amp;gt;&amp;lt;/reportPath&amp;gt;  ( default: target/i18n )&lt;br /&gt;
           &lt;br /&gt;
  &amp;lt;/configuration&amp;gt;&lt;br /&gt;
  &amp;lt;/plugin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notes: &lt;br /&gt;
* The session level settings are set once per MVN invocation. Whichever scan / project goal is executed first, its configuration will be set for all the subsequent scans&lt;br /&gt;
* The &amp;lt;code&amp;gt;log4jPropertiesFileDir&amp;lt;/code&amp;gt; is precisely that: which log4j &amp;lt;b&amp;gt;configuration&amp;lt;/b&amp;gt; file to use is the &amp;lt;code&amp;gt;setLog4jProperties/code&amp;gt; is set to true. For for example, if that setting points to &amp;lt;code&amp;gt;/path/to/log4j.properties&amp;lt;/code&amp;gt; and in that configuration, the appender points to &amp;lt;code&amp;gt;/path/to/globalyzer/log&amp;lt;/code&amp;gt;, that&#039;s where the logs will be written out.&lt;br /&gt;
* Best would be to have the &amp;lt;b&amp;gt;exact same configuration&amp;lt;/b&amp;gt; for all Globalyzer goals to make sure one configuration is not taking over the other ones.&lt;br /&gt;
&lt;br /&gt;
== Running Globalyzer MVN Plugin From The Command Prompt / Shell ==&lt;br /&gt;
&lt;br /&gt;
Globalyzer MVN Plugin can be executed from a command prompt or shell via the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn com.lingoport.globalyzer.client.maven:globalyzer-maven-plugin:5.2.1:scan&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After MVN finishes each scan, a Globalyzer report per scan is created at the location specified in the pom.xml report path. The default location for the reports are target/i18n for each MVN module.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you have configured the execution to be in the &amp;lt;code&amp;gt;validate&amp;lt;/code&amp;gt; phase, you can run the simpler command: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn validate&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(See the multi-scan example below)&lt;br /&gt;
&lt;br /&gt;
== Multi-Threaded Support ==&lt;br /&gt;
The Globalyzer MVN plugin supports multi-threaded invocation. For instance, on multi-module projects, use the -T option. For instance:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn com.lingoport.globalyzer.client.maven:globalyzer-maven-plugin:5.2.1:scan -Pglobalyzer -T1.0C&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you have configured the execution to be in the &amp;lt;code&amp;gt;validate&amp;lt;/code&amp;gt; phase, you can run the simpler command: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn validate -T1.0C&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(See the multi-scan example below)&lt;br /&gt;
&lt;br /&gt;
== Multi-Scan Projects ==&lt;br /&gt;
&lt;br /&gt;
To execute more than one scan on a MVN project, use as many &amp;quot;execution&amp;quot; as you have rule sets to apply to scan the code. For instance, two scans will be performed with the following snippet, one using the &amp;lt;code&amp;gt;testjava&amp;lt;/code&amp;gt; rule set, the other using the &amp;lt;code&amp;gt;testjavascript&amp;lt;/code&amp;gt; rule set:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;plugin&amp;gt;&lt;br /&gt;
        &amp;lt;groupId&amp;gt;com.lingoport.globalyzer.client.maven&amp;lt;/groupId&amp;gt;&lt;br /&gt;
        &amp;lt;artifactId&amp;gt;globalyzer-maven-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;
        &amp;lt;version&amp;gt;5.2.1&amp;lt;/version&amp;gt;&lt;br /&gt;
        &amp;lt;executions&amp;gt;&lt;br /&gt;
          &amp;lt;execution&amp;gt;&lt;br /&gt;
            &#039;&#039;&#039;&amp;lt;id&amp;gt;execution1&amp;lt;/id&amp;gt;&lt;br /&gt;
            &amp;lt;phase&amp;gt;validate&amp;lt;/phase&#039;&#039;&#039;&amp;gt;&lt;br /&gt;
              &amp;lt;configuration&amp;gt;&lt;br /&gt;
              &amp;lt;username&amp;gt;bob@yourcompany.com&amp;lt;/username&amp;gt;&lt;br /&gt;
              &amp;lt;password&amp;gt;bobpassword&amp;lt;/password&amp;gt;&lt;br /&gt;
              &#039;&#039;&#039;&amp;lt;ruleSetName&amp;gt;testjava&amp;lt;/ruleSetName&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;scanName&amp;gt;java-report&amp;lt;/scanName&amp;gt;&lt;br /&gt;
              &amp;lt;/configuration&amp;gt;&lt;br /&gt;
               &amp;lt;goals&amp;gt;&lt;br /&gt;
                  &#039;&#039;&#039;&amp;lt;goal&amp;gt;scan&amp;lt;/goal&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;/goals&amp;gt;            &lt;br /&gt;
          &amp;lt;/execution&amp;gt;&lt;br /&gt;
          &amp;lt;execution&amp;gt;&lt;br /&gt;
          &#039;&#039;&#039;&amp;lt;id&amp;gt;execution2&amp;lt;/id&amp;gt;&lt;br /&gt;
           &amp;lt;phase&amp;gt;validate&amp;lt;/phase&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
            &amp;lt;configuration&amp;gt;&lt;br /&gt;
              &amp;lt;username&amp;gt;bob@yourcompany.com&amp;lt;/username&amp;gt;&lt;br /&gt;
              &amp;lt;password&amp;gt;bobpassword&amp;lt;/password&amp;gt;&lt;br /&gt;
              &#039;&#039;&#039;&amp;lt;ruleSetName&amp;gt;testjavascript&amp;lt;/ruleSetName&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;scanName&amp;gt;javascript-report&amp;lt;/scanName&amp;gt;&lt;br /&gt;
             &amp;lt;/configuration&amp;gt;&lt;br /&gt;
             &amp;lt;goals&amp;gt;&lt;br /&gt;
               &#039;&#039;&#039;&amp;lt;goal&amp;gt;scan&amp;lt;/goal&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
             &amp;lt;/goals&amp;gt;&lt;br /&gt;
          &amp;lt;/execution&amp;gt;&lt;br /&gt;
        &amp;lt;/executions&amp;gt;                  &lt;br /&gt;
  &amp;lt;/plugin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Sharing pom.xml Files Between IDEs and Build Systems ==&lt;br /&gt;
&lt;br /&gt;
It is common to check in a single &amp;lt;code&amp;gt;pom.xml&amp;lt;/code&amp;gt; per code repository. However, some configuration on a developer&#039;s laptop may be different from a build system.&lt;br /&gt;
&lt;br /&gt;
A possibility to bridge the environment is to keep the most Globalyzer specific configuration only in the pom.xml file and to move the system side in the settings.xml file.&lt;/div&gt;</summary>
		<author><name>Mheilner</name></author>
	</entry>
	<entry>
		<id>https://wiki.lingoport.com/index.php?title=MVN_Plugin&amp;diff=88592</id>
		<title>MVN Plugin</title>
		<link rel="alternate" type="text/html" href="https://wiki.lingoport.com/index.php?title=MVN_Plugin&amp;diff=88592"/>
		<updated>2016-09-27T18:26:06Z</updated>

		<summary type="html">&lt;p&gt;Mheilner: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Globalyzer has a number of clients: The Workbench, the command line interface, Lite, the Ant client, and the MVN plugin. When using a MVN project, you can add code scanning with Globalyzer using our MVN plugin. &lt;br /&gt;
It is well suited for use within automation routines and Continuous Integration (CI) systems as well as within a typical developer environment, for instance within an Integrated Development Environments (IDEs).&lt;br /&gt;
&lt;br /&gt;
The Globalyzer MVN plugin generates scan reports to a directory specified the pom.xml file. Scan reports are available in a variety of formats. We ask our MVN customers to install the MVN plugin in a private MVN repository for that company. &lt;br /&gt;
&lt;br /&gt;
The steps to use the Globalyzer MVN plugin are the same as any MVN plugin:&lt;br /&gt;
* Install the plugin&lt;br /&gt;
* Configure the pom.xml&lt;br /&gt;
* Run MVN&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Install the Globalyzer MVN Plugin ==&lt;br /&gt;
&lt;br /&gt;
For those customers who require the MVN plugin, we make the globalyzer-maven-plugin-x.y.z-jar-with-dependencies.jar file available for downloadm where x.y.z is the version for the plugin, for instance 5.2.1. We ask that this jar file be installed in a private MVN repository at the customer&#039;s side.&lt;br /&gt;
You first need to get the file from a secure FTP location, which will be sent to customers who request it. Lingoport customers can request the MVN plugin by sending an email to &amp;lt;code&amp;gt;support at lingoport dot com&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example, a developer who wants to install the plugin in their local .m2 repository can use the following installation command, provided for a version &amp;lt;code&amp;gt;5.2.1&amp;lt;/code&amp;gt; of the MVN plugin. The same applies to other versions.t&lt;br /&gt;
&lt;br /&gt;
  C:\Users\Yourname&amp;gt;&#039;&#039;&#039;mvn install:install-file&#039;&#039;&#039; -Dfile=&amp;quot;C:\Path\to\the\plugin\jarfile\&#039;&#039;&#039;globalyzer-maven-plugin-5.2.1-jar-with-dependencies.jar&#039;&#039;&#039;&amp;quot; -DgroupId=&#039;&#039;&#039;com.lingoport.globalyzer.client.maven&#039;&#039;&#039; -DartifactId=&#039;&#039;&#039;globalyzer-maven-plugin&#039;&#039;&#039; -Dversion=&#039;&#039;&#039;5.2.1&#039;&#039;&#039; -Dpackaging=&#039;&#039;&#039;maven-plugin&#039;&#039;&#039;&lt;br /&gt;
  [INFO] Scanning for projects...&lt;br /&gt;
  [INFO]&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO] Building Maven Stub Project (No POM) 1&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO]&lt;br /&gt;
  [INFO] --- maven-install-plugin:2.4:install-file (default-cli) @ standalone-pom ---&lt;br /&gt;
  [INFO] Installing C:\Linternal\Installers\install\globalyzer-maven-plugin-5.2.1.jar to C:\Users\Yourname\.m2\repository\com\lingoport\globalyzer\client\maven\globalyzer-maven-plugin\5.2.1\globalyzer-maven-plugin-5.2.1.jar&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO] BUILD SUCCESS&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO] Total time: 0.615 s&lt;br /&gt;
  [INFO] Finished at: 2016-09-09T15:49:59-06:00&lt;br /&gt;
  [INFO] Final Memory: 7M/123M&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Configure the Globalyzer MVN Plugin ==&lt;br /&gt;
The &amp;lt;code&amp;gt;&amp;lt;build&amp;gt;&amp;lt;plugins&amp;gt;&amp;lt;/code&amp;gt; section of your module&#039;s pom.xml file must be configured. Here is how:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;plugin&amp;gt;&lt;br /&gt;
  &amp;lt;groupId&amp;gt;com.lingoport.globalyzer.client.maven&amp;lt;/groupId&amp;gt;&lt;br /&gt;
  &amp;lt;artifactId&amp;gt;globalyzer-maven-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;
  &amp;lt;version&amp;gt;5.2.1&amp;lt;/version&amp;gt;&lt;br /&gt;
  &amp;lt;configuration&amp;gt;&lt;br /&gt;
      &#039;&#039;&#039;-required - &#039;&#039;&#039;&lt;br /&gt;
           &#039;&#039;&#039;- session level settings - &#039;&#039;&#039;&lt;br /&gt;
           &amp;lt;username&amp;gt;joe@company.com&amp;lt;/username&amp;gt;&lt;br /&gt;
           &amp;lt;password&amp;gt;joespw&amp;lt;/password&amp;gt;&lt;br /&gt;
           &#039;&#039;&#039;- scan level settings - &#039;&#039;&#039;&lt;br /&gt;
           &amp;lt;ruleSetName&amp;gt;Java Rule Set&amp;lt;/ruleSetName&amp;gt;&lt;br /&gt;
      &#039;&#039;&#039;-optional -&#039;&#039;&#039;&lt;br /&gt;
           &#039;&#039;&#039;- session level settings -&#039;&#039;&#039;&lt;br /&gt;
           &amp;lt;serverUrl&amp;gt;&amp;lt;/serverUrl&amp;gt;  (default: https://www.globalyzer.com/gzserver)     &lt;br /&gt;
           &amp;lt;dataDictionaryDir&amp;gt;&amp;lt;/dataDictionaryDir&amp;gt;  ( default: userhome/.globalyzer )&lt;br /&gt;
           &amp;lt;scanTimeout&amp;gt;&amp;lt;/scanTimeout&amp;gt;  ( default: 120 seconds )&lt;br /&gt;
           &amp;lt;filterWithDictionary&amp;gt;&amp;lt;/filterWithDictionary&amp;gt; ( default: true )&lt;br /&gt;
           &amp;lt;setLog4jProperties&amp;gt;&amp;lt;/setLog4jProperties&amp;gt;  ( default: true )&lt;br /&gt;
           &amp;lt;log4jPropertiesFileDir&amp;gt;&amp;lt;/log4jPropertiesFileDir&amp;gt; ( default: Globalyzer provided )        &lt;br /&gt;
           &#039;&#039;&#039;- scan level settings -&#039;&#039;&#039;    &lt;br /&gt;
           &amp;lt;projectName&amp;gt;&amp;lt;/projectName&amp;gt;  ( default: project artifact )    &lt;br /&gt;
           &amp;lt;projectDir&amp;gt;&amp;lt;/projectDir&amp;gt;  ( default: project src/main/java )&lt;br /&gt;
           &amp;lt;ruleSetOwner&amp;gt;&amp;lt;/ruleSetOwner&amp;gt;  ( default: username )&lt;br /&gt;
           &amp;lt;scanName&amp;gt;&amp;lt;/scanName&amp;gt;  ( default: auto-generate ) &lt;br /&gt;
           &amp;lt;!-- choices:                     --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanDetailedXML        --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanDetailedExcel      --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanDetailedCSV        --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanSummaryHtml        --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanSummaryText        --&amp;gt;&lt;br /&gt;
           &amp;lt;reportType&amp;gt;&amp;lt;/reportType&amp;gt;  ( default: ScanDetailedXML )&lt;br /&gt;
           &amp;lt;reportPath&amp;gt;&amp;lt;/reportPath&amp;gt;  ( default: target/i18n )&lt;br /&gt;
           &lt;br /&gt;
  &amp;lt;/configuration&amp;gt;&lt;br /&gt;
  &amp;lt;/plugin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notes: &lt;br /&gt;
* The configuration settings are set once per MVN invocation. Whichever scan / project goal is executed first, its configuration will be set for all the subsequent scans&lt;br /&gt;
* The &amp;lt;code&amp;gt;log4jPropertiesFileDir&amp;lt;/code&amp;gt; is precisely that: which log4j &amp;lt;b&amp;gt;configuration&amp;lt;/b&amp;gt; file to use is the &amp;lt;code&amp;gt;setLog4jProperties/code&amp;gt; is set to true. For for example, if that setting points to &amp;lt;code&amp;gt;/path/to/log4j.properties&amp;lt;/code&amp;gt; and in that configuration, the appender points to &amp;lt;code&amp;gt;/path/to/globalyzer/log&amp;lt;/code&amp;gt;, that&#039;s where the logs will be written out.&lt;br /&gt;
* Best would be to have the &amp;lt;b&amp;gt;exact same configuration&amp;lt;/b&amp;gt; for all Globalyzer goals to make sure one configuration is not taking over the other ones.&lt;br /&gt;
&lt;br /&gt;
== Running Globalyzer MVN Plugin From The Command Prompt / Shell ==&lt;br /&gt;
&lt;br /&gt;
Globalyzer MVN Plugin can be executed from a command prompt or shell via the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn com.lingoport.globalyzer.client.maven:globalyzer-maven-plugin:5.2.1:scan&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After MVN finishes each scan, a Globalyzer report per scan is created at the location specified in the pom.xml report path. The default location for the reports are target/i18n for each MVN module.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you have configured the execution to be in the &amp;lt;code&amp;gt;validate&amp;lt;/code&amp;gt; phase, you can run the simpler command: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn validate&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(See the multi-scan example below)&lt;br /&gt;
&lt;br /&gt;
== Multi-Threaded Support ==&lt;br /&gt;
The Globalyzer MVN plugin supports multi-threaded invocation. For instance, on multi-module projects, use the -T option. For instance:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn com.lingoport.globalyzer.client.maven:globalyzer-maven-plugin:5.2.1:scan -Pglobalyzer -T1.0C&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you have configured the execution to be in the &amp;lt;code&amp;gt;validate&amp;lt;/code&amp;gt; phase, you can run the simpler command: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn validate -T1.0C&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(See the multi-scan example below)&lt;br /&gt;
&lt;br /&gt;
== Multi-Scan Projects ==&lt;br /&gt;
&lt;br /&gt;
To execute more than one scan on a MVN project, use as many &amp;quot;execution&amp;quot; as you have rule sets to apply to scan the code. For instance, two scans will be performed with the following snippet, one using the &amp;lt;code&amp;gt;testjava&amp;lt;/code&amp;gt; rule set, the other using the &amp;lt;code&amp;gt;testjavascript&amp;lt;/code&amp;gt; rule set:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;plugin&amp;gt;&lt;br /&gt;
        &amp;lt;groupId&amp;gt;com.lingoport.globalyzer.client.maven&amp;lt;/groupId&amp;gt;&lt;br /&gt;
        &amp;lt;artifactId&amp;gt;globalyzer-maven-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;
        &amp;lt;version&amp;gt;5.2.1&amp;lt;/version&amp;gt;&lt;br /&gt;
        &amp;lt;executions&amp;gt;&lt;br /&gt;
          &amp;lt;execution&amp;gt;&lt;br /&gt;
            &#039;&#039;&#039;&amp;lt;id&amp;gt;execution1&amp;lt;/id&amp;gt;&lt;br /&gt;
            &amp;lt;phase&amp;gt;validate&amp;lt;/phase&#039;&#039;&#039;&amp;gt;&lt;br /&gt;
              &amp;lt;configuration&amp;gt;&lt;br /&gt;
              &amp;lt;username&amp;gt;bob@yourcompany.com&amp;lt;/username&amp;gt;&lt;br /&gt;
              &amp;lt;password&amp;gt;bobpassword&amp;lt;/password&amp;gt;&lt;br /&gt;
              &#039;&#039;&#039;&amp;lt;ruleSetName&amp;gt;testjava&amp;lt;/ruleSetName&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;scanName&amp;gt;java-report&amp;lt;/scanName&amp;gt;&lt;br /&gt;
              &amp;lt;/configuration&amp;gt;&lt;br /&gt;
               &amp;lt;goals&amp;gt;&lt;br /&gt;
                  &#039;&#039;&#039;&amp;lt;goal&amp;gt;scan&amp;lt;/goal&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;/goals&amp;gt;            &lt;br /&gt;
          &amp;lt;/execution&amp;gt;&lt;br /&gt;
          &amp;lt;execution&amp;gt;&lt;br /&gt;
          &#039;&#039;&#039;&amp;lt;id&amp;gt;execution2&amp;lt;/id&amp;gt;&lt;br /&gt;
           &amp;lt;phase&amp;gt;validate&amp;lt;/phase&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
            &amp;lt;configuration&amp;gt;&lt;br /&gt;
              &amp;lt;username&amp;gt;bob@yourcompany.com&amp;lt;/username&amp;gt;&lt;br /&gt;
              &amp;lt;password&amp;gt;bobpassword&amp;lt;/password&amp;gt;&lt;br /&gt;
              &#039;&#039;&#039;&amp;lt;ruleSetName&amp;gt;testjavascript&amp;lt;/ruleSetName&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;scanName&amp;gt;javascript-report&amp;lt;/scanName&amp;gt;&lt;br /&gt;
             &amp;lt;/configuration&amp;gt;&lt;br /&gt;
             &amp;lt;goals&amp;gt;&lt;br /&gt;
               &#039;&#039;&#039;&amp;lt;goal&amp;gt;scan&amp;lt;/goal&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
             &amp;lt;/goals&amp;gt;&lt;br /&gt;
          &amp;lt;/execution&amp;gt;&lt;br /&gt;
        &amp;lt;/executions&amp;gt;                  &lt;br /&gt;
  &amp;lt;/plugin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Sharing pom.xml Files Between IDEs and Build Systems ==&lt;br /&gt;
&lt;br /&gt;
It is common to check in a single &amp;lt;code&amp;gt;pom.xml&amp;lt;/code&amp;gt; per code repository. However, some configuration on a developer&#039;s laptop may be different from a build system.&lt;br /&gt;
&lt;br /&gt;
A possibility to bridge the environment is to keep the most Globalyzer specific configuration only in the pom.xml file and to move the system side in the settings.xml file.&lt;/div&gt;</summary>
		<author><name>Mheilner</name></author>
	</entry>
	<entry>
		<id>https://wiki.lingoport.com/index.php?title=MVN_Plugin&amp;diff=88591</id>
		<title>MVN Plugin</title>
		<link rel="alternate" type="text/html" href="https://wiki.lingoport.com/index.php?title=MVN_Plugin&amp;diff=88591"/>
		<updated>2016-09-27T18:22:02Z</updated>

		<summary type="html">&lt;p&gt;Mheilner: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Globalyzer has a number of clients: The Workbench, the command line interface, Lite, the Ant client, and the MVN plugin. When using a MVN project, you can add code scanning with Globalyzer using our MVN plugin. &lt;br /&gt;
It is well suited for use within automation routines and Continuous Integration (CI) systems as well as within a typical developer environment, for instance within an Integrated Development Environments (IDEs).&lt;br /&gt;
&lt;br /&gt;
The Globalyzer MVN plugin generates scan reports to a directory specified the pom.xml file. Scan reports are available in a variety of formats. We ask our MVN customers to install the MVN plugin in a private MVN repository for that company. &lt;br /&gt;
&lt;br /&gt;
The steps to use the Globalyzer MVN plugin are the same as any MVN plugin:&lt;br /&gt;
* Install the plugin&lt;br /&gt;
* Configure the pom.xml&lt;br /&gt;
* Run MVN&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Install the Globalyzer MVN Plugin ==&lt;br /&gt;
&lt;br /&gt;
For those customers who require the MVN plugin, we make the globalyzer-maven-plugin-x.y.z-jar-with-dependencies.jar file available for downloadm where x.y.z is the version for the plugin, for instance 5.2.1. We ask that this jar file be installed in a private MVN repository at the customer&#039;s side.&lt;br /&gt;
You first need to get the file from a secure FTP location, which will be sent to customers who request it. Lingoport customers can request the MVN plugin by sending an email to &amp;lt;code&amp;gt;support at lingoport dot com&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example, a developer who wants to install the plugin in their local .m2 repository can use the following installation command, provided for a version &amp;lt;code&amp;gt;5.2.1&amp;lt;/code&amp;gt; of the MVN plugin. The same applies to other versions.t&lt;br /&gt;
&lt;br /&gt;
  C:\Users\Yourname&amp;gt;&#039;&#039;&#039;mvn install:install-file&#039;&#039;&#039; -Dfile=&amp;quot;C:\Path\to\the\plugin\jarfile\&#039;&#039;&#039;globalyzer-maven-plugin-5.2.1-jar-with-dependencies.jar&#039;&#039;&#039;&amp;quot; -DgroupId=&#039;&#039;&#039;com.lingoport.globalyzer.client.maven&#039;&#039;&#039; -DartifactId=&#039;&#039;&#039;globalyzer-maven-plugin&#039;&#039;&#039; -Dversion=&#039;&#039;&#039;5.2.1&#039;&#039;&#039; -Dpackaging=&#039;&#039;&#039;maven-plugin&#039;&#039;&#039;&lt;br /&gt;
  [INFO] Scanning for projects...&lt;br /&gt;
  [INFO]&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO] Building Maven Stub Project (No POM) 1&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO]&lt;br /&gt;
  [INFO] --- maven-install-plugin:2.4:install-file (default-cli) @ standalone-pom ---&lt;br /&gt;
  [INFO] Installing C:\Linternal\Installers\install\globalyzer-maven-plugin-5.2.1.jar to C:\Users\Yourname\.m2\repository\com\lingoport\globalyzer\client\maven\globalyzer-maven-plugin\5.2.1\globalyzer-maven-plugin-5.2.1.jar&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO] BUILD SUCCESS&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
  [INFO] Total time: 0.615 s&lt;br /&gt;
  [INFO] Finished at: 2016-09-09T15:49:59-06:00&lt;br /&gt;
  [INFO] Final Memory: 7M/123M&lt;br /&gt;
  [INFO] ------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
== Configure the Globalyzer MVN Plugin ==&lt;br /&gt;
The &amp;lt;code&amp;gt;&amp;lt;build&amp;gt;&amp;lt;plugins&amp;gt;&amp;lt;/code&amp;gt; section of your module&#039;s pom.xml file must be configured. Here is how:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;plugin&amp;gt;&lt;br /&gt;
  &amp;lt;groupId&amp;gt;com.lingoport.globalyzer.client.maven&amp;lt;/groupId&amp;gt;&lt;br /&gt;
  &amp;lt;artifactId&amp;gt;globalyzer-maven-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;
  &amp;lt;version&amp;gt;5.2.1&amp;lt;/version&amp;gt;&lt;br /&gt;
  &amp;lt;configuration&amp;gt;&lt;br /&gt;
      &#039;&#039;&#039;-required - &#039;&#039;&#039;&lt;br /&gt;
           &#039;&#039;&#039;- session level settings - &#039;&#039;&#039;&lt;br /&gt;
           &amp;lt;username&amp;gt;joe@company.com&amp;lt;/username&amp;gt;&lt;br /&gt;
           &amp;lt;password&amp;gt;joespw&amp;lt;/password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
           &#039;&#039;&#039;- scan level settings - &#039;&#039;&#039;&lt;br /&gt;
           &amp;lt;ruleSetName&amp;gt;Java Rule Set&amp;lt;/ruleSetName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &#039;&#039;&#039;-optional -&#039;&#039;&#039;&lt;br /&gt;
           &#039;&#039;&#039;- session level settings -&#039;&#039;&#039;&lt;br /&gt;
           &amp;lt;serverUrl&amp;gt;&amp;lt;/serverUrl&amp;gt;  (default: https://www.globalyzer.com/gzserver)     &lt;br /&gt;
           &amp;lt;dataDictionaryDir&amp;gt;&amp;lt;/dataDictionaryDir&amp;gt;  ( default: userhome/.globalyzer )&lt;br /&gt;
           &amp;lt;scanTimeout&amp;gt;&amp;lt;/scanTimeout&amp;gt;  ( default: 120 seconds )&lt;br /&gt;
           &amp;lt;filterWithDictionary&amp;gt;&amp;lt;/filterWithDictionary&amp;gt; ( default: true )&lt;br /&gt;
           &amp;lt;setLog4jProperties&amp;gt;&amp;lt;/setLog4jProperties&amp;gt;  ( default: true )&lt;br /&gt;
           &amp;lt;log4jPropertiesFileDir&amp;gt;&amp;lt;/log4jPropertiesFileDir&amp;gt; ( default: Globalyzer provided )   &lt;br /&gt;
      &lt;br /&gt;
           &#039;&#039;&#039;- scan level settings -&#039;&#039;&#039;    &lt;br /&gt;
           &amp;lt;projectName&amp;gt;&amp;lt;/projectName&amp;gt;  ( default: project artifact )    &lt;br /&gt;
           &amp;lt;projectDir&amp;gt;&amp;lt;/projectDir&amp;gt;  ( default: project src/main/java )&lt;br /&gt;
           &amp;lt;ruleSetOwner&amp;gt;&amp;lt;/ruleSetOwner&amp;gt;  ( default: username )&lt;br /&gt;
           &amp;lt;scanName&amp;gt;&amp;lt;/scanName&amp;gt;  ( default: auto-generate ) &lt;br /&gt;
           &amp;lt;!-- choices:                     --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanDetailedXML        --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanDetailedExcel      --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanDetailedCSV        --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanSummaryHtml        --&amp;gt;&lt;br /&gt;
           &amp;lt;!--       ScanSummaryText        --&amp;gt;&lt;br /&gt;
           &amp;lt;reportType&amp;gt;&amp;lt;/reportType&amp;gt;  ( default: ScanDetailedXML )&lt;br /&gt;
           &amp;lt;reportPath&amp;gt;&amp;lt;/reportPath&amp;gt;  ( default: target/i18n )&lt;br /&gt;
           &lt;br /&gt;
  &amp;lt;/configuration&amp;gt;&lt;br /&gt;
  &amp;lt;/plugin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notes: &lt;br /&gt;
* The configuration settings are set once per MVN invocation. Whichever scan / project goal is executed first, its configuration will be set for all the subsequent scans&lt;br /&gt;
* The &amp;lt;code&amp;gt;log4jPropertiesFileDir&amp;lt;/code&amp;gt; is precisely that: which log4j &amp;lt;b&amp;gt;configuration&amp;lt;/b&amp;gt; file to use is the &amp;lt;code&amp;gt;setLog4jProperties/code&amp;gt; is set to true. For for example, if that setting points to &amp;lt;code&amp;gt;/path/to/log4j.properties&amp;lt;/code&amp;gt; and in that configuration, the appender points to &amp;lt;code&amp;gt;/path/to/globalyzer/log&amp;lt;/code&amp;gt;, that&#039;s where the logs will be written out.&lt;br /&gt;
* Best would be to have the &amp;lt;b&amp;gt;exact same configuration&amp;lt;/b&amp;gt; for all Globalyzer goals to make sure one configuration is not taking over the other ones.&lt;br /&gt;
&lt;br /&gt;
== Running Globalyzer MVN Plugin From The Command Prompt / Shell ==&lt;br /&gt;
&lt;br /&gt;
Globalyzer MVN Plugin can be executed from a command prompt or shell via the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn com.lingoport.globalyzer.client.maven:globalyzer-maven-plugin:5.2.1:scan&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After MVN finishes each scan, a Globalyzer report per scan is created at the location specified in the pom.xml report path. The default location for the reports are target/i18n for each MVN module.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you have configured the execution to be in the &amp;lt;code&amp;gt;validate&amp;lt;/code&amp;gt; phase, you can run the simpler command: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn validate&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(See the multi-scan example below)&lt;br /&gt;
&lt;br /&gt;
== Multi-Threaded Support ==&lt;br /&gt;
The Globalyzer MVN plugin supports multi-threaded invocation. For instance, on multi-module projects, use the -T option. For instance:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn com.lingoport.globalyzer.client.maven:globalyzer-maven-plugin:5.2.1:scan -Pglobalyzer -T1.0C&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you have configured the execution to be in the &amp;lt;code&amp;gt;validate&amp;lt;/code&amp;gt; phase, you can run the simpler command: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn validate -T1.0C&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(See the multi-scan example below)&lt;br /&gt;
&lt;br /&gt;
== Multi-Scan Projects ==&lt;br /&gt;
&lt;br /&gt;
To execute more than one scan on a MVN project, use as many &amp;quot;execution&amp;quot; as you have rule sets to apply to scan the code. For instance, two scans will be performed with the following snippet, one using the &amp;lt;code&amp;gt;testjava&amp;lt;/code&amp;gt; rule set, the other using the &amp;lt;code&amp;gt;testjavascript&amp;lt;/code&amp;gt; rule set:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;plugin&amp;gt;&lt;br /&gt;
        &amp;lt;groupId&amp;gt;com.lingoport.globalyzer.client.maven&amp;lt;/groupId&amp;gt;&lt;br /&gt;
        &amp;lt;artifactId&amp;gt;globalyzer-maven-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;
        &amp;lt;version&amp;gt;5.2.1&amp;lt;/version&amp;gt;&lt;br /&gt;
        &amp;lt;executions&amp;gt;&lt;br /&gt;
          &amp;lt;execution&amp;gt;&lt;br /&gt;
            &#039;&#039;&#039;&amp;lt;id&amp;gt;execution1&amp;lt;/id&amp;gt;&lt;br /&gt;
            &amp;lt;phase&amp;gt;validate&amp;lt;/phase&#039;&#039;&#039;&amp;gt;&lt;br /&gt;
              &amp;lt;configuration&amp;gt;&lt;br /&gt;
              &amp;lt;username&amp;gt;bob@yourcompany.com&amp;lt;/username&amp;gt;&lt;br /&gt;
              &amp;lt;password&amp;gt;bobpassword&amp;lt;/password&amp;gt;&lt;br /&gt;
              &#039;&#039;&#039;&amp;lt;ruleSetName&amp;gt;testjava&amp;lt;/ruleSetName&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;scanName&amp;gt;java-report&amp;lt;/scanName&amp;gt;&lt;br /&gt;
              &amp;lt;/configuration&amp;gt;&lt;br /&gt;
               &amp;lt;goals&amp;gt;&lt;br /&gt;
                  &#039;&#039;&#039;&amp;lt;goal&amp;gt;scan&amp;lt;/goal&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;/goals&amp;gt;            &lt;br /&gt;
          &amp;lt;/execution&amp;gt;&lt;br /&gt;
          &amp;lt;execution&amp;gt;&lt;br /&gt;
          &#039;&#039;&#039;&amp;lt;id&amp;gt;execution2&amp;lt;/id&amp;gt;&lt;br /&gt;
           &amp;lt;phase&amp;gt;validate&amp;lt;/phase&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
            &amp;lt;configuration&amp;gt;&lt;br /&gt;
              &amp;lt;username&amp;gt;bob@yourcompany.com&amp;lt;/username&amp;gt;&lt;br /&gt;
              &amp;lt;password&amp;gt;bobpassword&amp;lt;/password&amp;gt;&lt;br /&gt;
              &#039;&#039;&#039;&amp;lt;ruleSetName&amp;gt;testjavascript&amp;lt;/ruleSetName&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;scanName&amp;gt;javascript-report&amp;lt;/scanName&amp;gt;&lt;br /&gt;
             &amp;lt;/configuration&amp;gt;&lt;br /&gt;
             &amp;lt;goals&amp;gt;&lt;br /&gt;
               &#039;&#039;&#039;&amp;lt;goal&amp;gt;scan&amp;lt;/goal&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
             &amp;lt;/goals&amp;gt;&lt;br /&gt;
          &amp;lt;/execution&amp;gt;&lt;br /&gt;
        &amp;lt;/executions&amp;gt;                  &lt;br /&gt;
  &amp;lt;/plugin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Sharing pom.xml Files Between IDEs and Build Systems ==&lt;br /&gt;
&lt;br /&gt;
It is common to check in a single &amp;lt;code&amp;gt;pom.xml&amp;lt;/code&amp;gt; per code repository. However, some configuration on a developer&#039;s laptop may be different from a build system.&lt;br /&gt;
&lt;br /&gt;
A possibility to bridge the environment is to keep the most Globalyzer specific configuration only in the pom.xml file and to move the system side in the settings.xml file.&lt;/div&gt;</summary>
		<author><name>Mheilner</name></author>
	</entry>
	<entry>
		<id>https://wiki.lingoport.com/index.php?title=MVN_Plugin&amp;diff=88496</id>
		<title>MVN Plugin</title>
		<link rel="alternate" type="text/html" href="https://wiki.lingoport.com/index.php?title=MVN_Plugin&amp;diff=88496"/>
		<updated>2016-09-06T21:39:48Z</updated>

		<summary type="html">&lt;p&gt;Mheilner: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Globalyzer has a number of clients: The Workbench, the command line interface, Lite, the Ant client, and the MVN plugin. When using a MVN project, you can add code scanning with Globalyzer using our MVN plugin. &lt;br /&gt;
It is well suited for use within automation routines and Continuous Integration (CI) systems as well as within a typical developer environment, for instance within an Integrated Development Environments (IDEs).&lt;br /&gt;
&lt;br /&gt;
The Globalyzer MVN plugin generates scan reports to a directory specified the pom.xml file. Scan reports are available in a variety of formats. We ask our MVN customers to install the MVN plugin in a private MVN repository for that company. &lt;br /&gt;
&lt;br /&gt;
The steps to use the Globalyzer MVN plugin are the same as any MVN plugin:&lt;br /&gt;
* Install the plugin&lt;br /&gt;
* Configure the pom.xml&lt;br /&gt;
* Run MVN&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Install the Globalyzer MVN Plugin ==&lt;br /&gt;
&lt;br /&gt;
For those customers who require the MVN plugin, we make the globalyzer-maven-plugin-x.y.z.jar file available for download. We ask that this jar file be installed in a private MVN repository at the customer&#039;s side. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Configure the Globalyzer MVN Plugin ==&lt;br /&gt;
The &amp;lt;code&amp;gt;&amp;lt;build&amp;gt;&amp;lt;plugins&amp;gt;&amp;lt;/code&amp;gt; section of your module&#039;s pom.xml file must be configured. Here is how:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;plugin&amp;gt;&lt;br /&gt;
  &amp;lt;groupId&amp;gt;com.lingoport.globalyzer.client.maven&amp;lt;/groupId&amp;gt;&lt;br /&gt;
  &amp;lt;artifactId&amp;gt;globalyzer-maven-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;
  &amp;lt;version&amp;gt;5.2.1&amp;lt;/version&amp;gt;&lt;br /&gt;
  &amp;lt;configuration&amp;gt;&lt;br /&gt;
      &#039;&#039;&#039;-required- &#039;&#039;&#039;&lt;br /&gt;
      &amp;lt;username&amp;gt;joe@company.com&amp;lt;/username&amp;gt;&lt;br /&gt;
      &amp;lt;password&amp;gt;joespw&amp;lt;/password&amp;gt;&lt;br /&gt;
      &amp;lt;ruleSetName&amp;gt;Java Rule Set&amp;lt;/ruleSetName&amp;gt;&lt;br /&gt;
      &#039;&#039;&#039;-optional-&#039;&#039;&#039;&lt;br /&gt;
      &amp;lt;serverUrl&amp;gt;&amp;lt;/serverUrl&amp;gt;  (default: https://www.globalyzer.com/gzserver)     &lt;br /&gt;
      &amp;lt;dataDictionaryDir&amp;gt;&amp;lt;/dataDictionaryDir&amp;gt;  ( default: userhome/.globalyzer )    &lt;br /&gt;
      &amp;lt;projectName&amp;gt;&amp;lt;/projectName&amp;gt;  ( default: project artifact )    &lt;br /&gt;
      &amp;lt;projectDir&amp;gt;&amp;lt;/projectDir&amp;gt;  ( default: project src/main/java )&lt;br /&gt;
      &amp;lt;ruleSetOwner&amp;gt;&amp;lt;/ruleSetOwner&amp;gt;  ( default: username )&lt;br /&gt;
      &amp;lt;scanName&amp;gt;&amp;lt;/scanName&amp;gt;  ( default: auto-generate )&lt;br /&gt;
      &amp;lt;scanTimeout&amp;gt;&amp;lt;/scanTimeout&amp;gt;  ( default: 120 seconds )&lt;br /&gt;
      &amp;lt;filterWithDictionary&amp;gt;&amp;lt;/filterWithDictionary&amp;gt; ( default: true )&lt;br /&gt;
      &amp;lt;!-- choices:                     --&amp;gt;&lt;br /&gt;
      &amp;lt;!--       ScanDetailedXML        --&amp;gt;&lt;br /&gt;
      &amp;lt;!--       ScanDetailedExcel      --&amp;gt;&lt;br /&gt;
      &amp;lt;!--       ScanDetailedCSV        --&amp;gt;&lt;br /&gt;
      &amp;lt;!--       ScanSummaryHtml        --&amp;gt;&lt;br /&gt;
      &amp;lt;!--       ScanSummaryText        --&amp;gt;&lt;br /&gt;
      &amp;lt;reportType&amp;gt;&amp;lt;/reportType&amp;gt;  ( default: ScanDetailedXML )&lt;br /&gt;
      &amp;lt;reportPath&amp;gt;&amp;lt;/reportPath&amp;gt;  ( default: target/i18n )&lt;br /&gt;
      &amp;lt;setLog4jProperties&amp;gt;&amp;lt;/setLog4jProperties&amp;gt;  ( default: true )&lt;br /&gt;
      &amp;lt;log4jPropertiesFileDir&amp;gt;&amp;lt;/log4jPropertiesFileDir&amp;gt; ( default: Globalyzer provided )              &lt;br /&gt;
  &amp;lt;/configuration&amp;gt;&lt;br /&gt;
  &amp;lt;/plugin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Running Globalyzer MVN Plugin From The Command Prompt / Shell ==&lt;br /&gt;
&lt;br /&gt;
Globalyzer MVN Plugin can be executed from a command prompt or shell via the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn com.lingoport.globalyzer.client.maven:globalyzer-maven-plugin:5.2.1:scan&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After MVN finishes each scan, a Globalyzer report per scan is created at the location specified in the pom.xml report path. The default location for the reports are target/i18n for each MVN module.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you have configured the execution to be in the &amp;lt;code&amp;gt;validate&amp;lt;/code&amp;gt; phase, you can run the simpler command: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn validate&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(See the multi-scan example below)&lt;br /&gt;
&lt;br /&gt;
== Multi-Threaded Support ==&lt;br /&gt;
The Globalyzer MVN plugin supports multi-threaded invocation. For instance, on multi-module projects, use the -T option. For instance:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn com.lingoport.globalyzer.client.maven:globalyzer-maven-plugin:5.2.1:scan -Pglobalyzer -T 1.0C&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you have configured the execution to be in the &amp;lt;code&amp;gt;validate&amp;lt;/code&amp;gt; phase, you can run the simpler command: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn validate -T 1.0C&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(See the multi-scan example below)&lt;br /&gt;
&lt;br /&gt;
== Multi-Scan Projects ==&lt;br /&gt;
&lt;br /&gt;
To execute more than one scan on a MVN project, use as many &amp;quot;execution&amp;quot; as you have rule sets to apply to scan the code. For instance, two scans will be performed with the following snippet, one using the &amp;lt;code&amp;gt;testjava&amp;lt;/code&amp;gt; rule set, the other using the &amp;lt;code&amp;gt;testjavascript&amp;lt;/code&amp;gt; rule set:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;plugin&amp;gt;&lt;br /&gt;
        &amp;lt;groupId&amp;gt;com.lingoport.globalyzer.client.maven&amp;lt;/groupId&amp;gt;&lt;br /&gt;
        &amp;lt;artifactId&amp;gt;globalyzer-maven-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;
        &amp;lt;version&amp;gt;5.2.1&amp;lt;/version&amp;gt;&lt;br /&gt;
        &amp;lt;executions&amp;gt;&lt;br /&gt;
          &amp;lt;execution&amp;gt;&lt;br /&gt;
            &#039;&#039;&#039;&amp;lt;id&amp;gt;execution1&amp;lt;/id&amp;gt;&lt;br /&gt;
            &amp;lt;phase&amp;gt;validate&amp;lt;/phase&#039;&#039;&#039;&amp;gt;&lt;br /&gt;
              &amp;lt;configuration&amp;gt;&lt;br /&gt;
              &amp;lt;username&amp;gt;bob@yourcompany.com&amp;lt;/username&amp;gt;&lt;br /&gt;
              &amp;lt;password&amp;gt;bobpassword&amp;lt;/password&amp;gt;&lt;br /&gt;
              &#039;&#039;&#039;&amp;lt;ruleSetName&amp;gt;testjava&amp;lt;/ruleSetName&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;scanName&amp;gt;java-report&amp;lt;/scanName&amp;gt;&lt;br /&gt;
              &amp;lt;/configuration&amp;gt;&lt;br /&gt;
               &amp;lt;goals&amp;gt;&lt;br /&gt;
                  &#039;&#039;&#039;&amp;lt;goal&amp;gt;scan&amp;lt;/goal&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;/goals&amp;gt;            &lt;br /&gt;
          &amp;lt;/execution&amp;gt;&lt;br /&gt;
          &amp;lt;execution&amp;gt;&lt;br /&gt;
          &#039;&#039;&#039;&amp;lt;id&amp;gt;execution2&amp;lt;/id&amp;gt;&lt;br /&gt;
           &amp;lt;phase&amp;gt;validate&amp;lt;/phase&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
            &amp;lt;configuration&amp;gt;&lt;br /&gt;
              &amp;lt;username&amp;gt;bob@yourcompany.com&amp;lt;/username&amp;gt;&lt;br /&gt;
              &amp;lt;password&amp;gt;bobpassword&amp;lt;/password&amp;gt;&lt;br /&gt;
              &#039;&#039;&#039;&amp;lt;ruleSetName&amp;gt;testjavascript&amp;lt;/ruleSetName&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;scanName&amp;gt;javascript-report&amp;lt;/scanName&amp;gt;&lt;br /&gt;
             &amp;lt;/configuration&amp;gt;&lt;br /&gt;
             &amp;lt;goals&amp;gt;&lt;br /&gt;
               &#039;&#039;&#039;&amp;lt;goal&amp;gt;scan&amp;lt;/goal&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
             &amp;lt;/goals&amp;gt;&lt;br /&gt;
          &amp;lt;/execution&amp;gt;&lt;br /&gt;
        &amp;lt;/executions&amp;gt;                  &lt;br /&gt;
  &amp;lt;/plugin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Sharing pom.xml Files Between IDEs and Build Systems ==&lt;br /&gt;
&lt;br /&gt;
It is common to check in a single pom.xml per code repository. However, some configuration on a developer&#039;s laptop may be different from a build system.&lt;br /&gt;
&lt;br /&gt;
A possibility to bridge the environment is to keep the most Globalyzer specific configuration only in the pom.xml file and to move the system side in the settings.xml file.&lt;/div&gt;</summary>
		<author><name>Mheilner</name></author>
	</entry>
	<entry>
		<id>https://wiki.lingoport.com/index.php?title=MVN_Plugin&amp;diff=88495</id>
		<title>MVN Plugin</title>
		<link rel="alternate" type="text/html" href="https://wiki.lingoport.com/index.php?title=MVN_Plugin&amp;diff=88495"/>
		<updated>2016-09-06T21:38:00Z</updated>

		<summary type="html">&lt;p&gt;Mheilner: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Globalyzer has a number of clients: The Workbench, the command line interface, Lite, the Ant client, and the MVN plugin. When using a MVN project, you can add code scanning with Globalyzer using our MVN plugin. &lt;br /&gt;
It is well suited for use within automation routines and Continuous Integration (CI) systems as well as within a typical developer environment, for instance within an Integrated Development Environments (IDEs).&lt;br /&gt;
&lt;br /&gt;
The Globalyzer MVN plugin generates scan reports to a directory specified the pom.xml file. Scan reports are available in a variety of formats. We ask our MVN customers to install the MVN plugin in a private MVN repository for that company. &lt;br /&gt;
&lt;br /&gt;
The steps to use the Globalyzer MVN plugin are the same as any MVN plugin:&lt;br /&gt;
* Install the plugin&lt;br /&gt;
* Configure the pom.xml&lt;br /&gt;
* Run MVN&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Install the Globalyzer MVN Plugin ==&lt;br /&gt;
&lt;br /&gt;
For those customers who require the MVN plugin, we make the globalyzer-maven-plugin-x.y.z.jar file available for download. We ask that this jar file be installed in a private MVN repository at the customer&#039;s side. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Configure the Globalyzer MVN Plugin ==&lt;br /&gt;
The &amp;lt;code&amp;gt;&amp;lt;build&amp;gt;&amp;lt;plugins&amp;gt;&amp;lt;/code&amp;gt; section of your module&#039;s pom.xml file must be configured. Here is how:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;plugin&amp;gt;&lt;br /&gt;
  &amp;lt;groupId&amp;gt;com.lingoport.globalyzer.client.maven&amp;lt;/groupId&amp;gt;&lt;br /&gt;
  &amp;lt;artifactId&amp;gt;globalyzer-maven-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;
  &amp;lt;version&amp;gt;5.2.1&amp;lt;/version&amp;gt;&lt;br /&gt;
  &amp;lt;configuration&amp;gt;&lt;br /&gt;
      &#039;&#039;&#039;-required- &#039;&#039;&#039;&lt;br /&gt;
      &amp;lt;username&amp;gt;joe@company.com&amp;lt;/username&amp;gt;&lt;br /&gt;
      &amp;lt;password&amp;gt;joespw&amp;lt;/password&amp;gt;&lt;br /&gt;
      &amp;lt;ruleSetName&amp;gt;Java Rule Set&amp;lt;/ruleSetName&amp;gt;&lt;br /&gt;
      &#039;&#039;&#039;-optional-&#039;&#039;&#039;&lt;br /&gt;
      &amp;lt;serverUrl&amp;gt;&amp;lt;/serverUrl&amp;gt;  (default: https://www.globalyzer.com/gzserver)     &lt;br /&gt;
      &amp;lt;dataDictionaryDir&amp;gt;&amp;lt;/dataDictionaryDir&amp;gt;  ( default: userhome/.globalyzer )    &lt;br /&gt;
      &amp;lt;projectName&amp;gt;&amp;lt;/projectName&amp;gt;  ( default: project artifact )    &lt;br /&gt;
      &amp;lt;projectDir&amp;gt;&amp;lt;/projectDir&amp;gt;  ( default: project src/main/java )&lt;br /&gt;
      &amp;lt;ruleSetOwner&amp;gt;&amp;lt;/ruleSetOwner&amp;gt;  ( default: username )&lt;br /&gt;
      &amp;lt;scanName&amp;gt;&amp;lt;/scanName&amp;gt;  ( default: auto-generate )&lt;br /&gt;
      &amp;lt;scanTimeout&amp;gt;&amp;lt;/scanTimeout&amp;gt;  ( default: 120 seconds )&lt;br /&gt;
      &amp;lt;filterWithDictionary&amp;gt;&amp;lt;/filterWithDictionary&amp;gt; ( default: true )&lt;br /&gt;
      &amp;lt;!-- choices:                     --&amp;gt;&lt;br /&gt;
      &amp;lt;!--       ScanDetailedXML        --&amp;gt;&lt;br /&gt;
      &amp;lt;!--       ScanDetailedExcel      --&amp;gt;&lt;br /&gt;
      &amp;lt;!--       ScanDetailedCSV        --&amp;gt;&lt;br /&gt;
      &amp;lt;!--       ScanSummaryHtml        --&amp;gt;&lt;br /&gt;
      &amp;lt;!--       ScanSummaryText        --&amp;gt;&lt;br /&gt;
      &amp;lt;reportType&amp;gt;&amp;lt;/reportType&amp;gt;  ( default: ScanDetailedXML )&lt;br /&gt;
      &amp;lt;reportPath&amp;gt;&amp;lt;/reportPath&amp;gt;  ( default: target/i18n )&lt;br /&gt;
      &amp;lt;setLog4jProperties&amp;gt;&amp;lt;/setLog4jProperties&amp;gt;  ( default: true )&lt;br /&gt;
      &amp;lt;log4jPropertiesFileDir&amp;gt;&amp;lt;/log4jPropertiesFileDir&amp;gt; ( default: Globalyzer provided )              &lt;br /&gt;
  &amp;lt;/configuration&amp;gt;&lt;br /&gt;
  &amp;lt;/plugin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Running Globalyzer MVN Plugin From The Command Prompt / Shell ==&lt;br /&gt;
&lt;br /&gt;
Globalyzer MVN Plugin can be executed from a command prompt or shell via the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn com.lingoport.globalyzer.client.maven:globalyzer-maven-plugin:5.2.1:scan&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After MVN finishes each scan, a Globalyzer report per scan is created at the location specified in the pom.xml report path. The default location for the reports are target/i18n for each MVN module.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you have configured the execution to be in the &amp;lt;code&amp;gt;validate&amp;lt;/code&amp;gt; phase, you can run the simpler command: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn validate&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(See the multi-scan example below)&lt;br /&gt;
&lt;br /&gt;
== Multi-Threaded Support ==&lt;br /&gt;
The Globalyzer MVN plugin supports multi-threaded invocation. For instance, on multi-module projects, use the -T option. For instance:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn com.lingoport.globalyzer.client.maven:globalyzer-maven-plugin:5.2.1:scan -Pglobalyzer -T 1.0C&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you have configured the execution to be in the &amp;lt;code&amp;gt;validate&amp;lt;/code&amp;gt; phase, you can run the simpler command: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mvn validate -T 1.0C&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(See the multi-scan example below)&lt;br /&gt;
&lt;br /&gt;
== Multi-Scan Projects ==&lt;br /&gt;
&lt;br /&gt;
To execute more than one scan on a MVN project, use as many &amp;quot;execution&amp;quot; as you have rule sets to apply to scan the code. For instance, two scans will be performed with the following snippet, one using the &amp;lt;code&amp;gt;testjava&amp;lt;/code&amp;gt; rule set, the other using the &amp;lt;code&amp;gt;testjavascript&amp;lt;/code&amp;gt; rule set:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;plugin&amp;gt;&lt;br /&gt;
        &amp;lt;groupId&amp;gt;com.lingoport.globalyzer.client.maven&amp;lt;/groupId&amp;gt;&lt;br /&gt;
        &amp;lt;artifactId&amp;gt;globalyzer-maven-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;
        &amp;lt;version&amp;gt;5.2&amp;lt;/version&amp;gt;&lt;br /&gt;
        &amp;lt;executions&amp;gt;&lt;br /&gt;
          &amp;lt;execution&amp;gt;&lt;br /&gt;
            &#039;&#039;&#039;&amp;lt;id&amp;gt;execution1&amp;lt;/id&amp;gt;&lt;br /&gt;
            &amp;lt;phase&amp;gt;validate&amp;lt;/phase&#039;&#039;&#039;&amp;gt;&lt;br /&gt;
              &amp;lt;configuration&amp;gt;&lt;br /&gt;
              &amp;lt;username&amp;gt;bob@yourcompany.com&amp;lt;/username&amp;gt;&lt;br /&gt;
              &amp;lt;password&amp;gt;bobpassword&amp;lt;/password&amp;gt;&lt;br /&gt;
              &#039;&#039;&#039;&amp;lt;ruleSetName&amp;gt;testjava&amp;lt;/ruleSetName&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;scanName&amp;gt;java-report&amp;lt;/scanName&amp;gt;&lt;br /&gt;
              &amp;lt;/configuration&amp;gt;&lt;br /&gt;
               &amp;lt;goals&amp;gt;&lt;br /&gt;
                  &#039;&#039;&#039;&amp;lt;goal&amp;gt;scan&amp;lt;/goal&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;/goals&amp;gt;            &lt;br /&gt;
          &amp;lt;/execution&amp;gt;&lt;br /&gt;
          &amp;lt;execution&amp;gt;&lt;br /&gt;
          &#039;&#039;&#039;&amp;lt;id&amp;gt;execution2&amp;lt;/id&amp;gt;&lt;br /&gt;
           &amp;lt;phase&amp;gt;validate&amp;lt;/phase&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
            &amp;lt;configuration&amp;gt;&lt;br /&gt;
              &amp;lt;username&amp;gt;bob@yourcompany.com&amp;lt;/username&amp;gt;&lt;br /&gt;
              &amp;lt;password&amp;gt;bobpassword&amp;lt;/password&amp;gt;&lt;br /&gt;
              &#039;&#039;&#039;&amp;lt;ruleSetName&amp;gt;testjavascript&amp;lt;/ruleSetName&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
              &amp;lt;scanName&amp;gt;javascript-report&amp;lt;/scanName&amp;gt;&lt;br /&gt;
             &amp;lt;/configuration&amp;gt;&lt;br /&gt;
             &amp;lt;goals&amp;gt;&lt;br /&gt;
               &#039;&#039;&#039;&amp;lt;goal&amp;gt;scan&amp;lt;/goal&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
             &amp;lt;/goals&amp;gt;&lt;br /&gt;
          &amp;lt;/execution&amp;gt;&lt;br /&gt;
        &amp;lt;/executions&amp;gt;                  &lt;br /&gt;
  &amp;lt;/plugin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Sharing pom.xml Files Between IDEs and Build Systems ==&lt;br /&gt;
&lt;br /&gt;
It is common to check in a single pom.xml per code repository. However, some configuration on a developer&#039;s laptop may be different from a build system.&lt;br /&gt;
&lt;br /&gt;
A possibility to bridge the environment is to keep the most Globalyzer specific configuration only in the pom.xml file and to move the system side in the settings.xml file.&lt;/div&gt;</summary>
		<author><name>Mheilner</name></author>
	</entry>
	<entry>
		<id>https://wiki.lingoport.com/index.php?title=Rule_Sets_FAQ&amp;diff=360</id>
		<title>Rule Sets FAQ</title>
		<link rel="alternate" type="text/html" href="https://wiki.lingoport.com/index.php?title=Rule_Sets_FAQ&amp;diff=360"/>
		<updated>2012-06-11T20:53:24Z</updated>

		<summary type="html">&lt;p&gt;Mheilner: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Can I modify the Default Rule Sets?===&lt;br /&gt;
&lt;br /&gt;
If you have a Globalyzer Team Server license, you will be hosting the Globalyzer Server, and as the Administrator, you can modify any of the Default Rule Sets. &lt;br /&gt;
&lt;br /&gt;
If you are running from Lingoport&#039;s Globalyzer Server, you will not be able to modify the Default Rule Sets, but you can modify one of your own Rule Sets and then allow your team members to either use it (sharing) or copy it. This Rule Set can then be the starting point for their internationalization scanning and filtering process.&lt;br /&gt;
&lt;br /&gt;
===Where can I find help on “General Pattern” issues found in C++ code scanning?===&lt;br /&gt;
&lt;br /&gt;
If you login to the Globalyzer Server and look at the General Patterns for your rule set, it will often give information on why Globalyzer is scanning for this pattern. In addition, if you go to the Help system on the Globalyzer Server, there are various topics on C++ internationalization. In particular, click on &#039;&#039;&#039;Reference-&amp;gt;Locale-Sensitive Methods-&amp;gt;C++ Programming Language-&amp;gt;C++ Rule Sets&#039;&#039;&#039;. This help page talks about Unicode support in the various C++ rule sets. For example, usually a C++ program will be compiled with single-byte character strings. These single-bytes cannot support Unicode characters, which require more than 1 byte. That is the main reason why our C++ General Patterns scan for character strings:  You will have to make sure to modify them if they are to hold Unicode strings.&lt;br /&gt;
&lt;br /&gt;
===Does Globalyzer fix JavaScript locale-sensitive method issues?===&lt;br /&gt;
&lt;br /&gt;
Globalyzer detects methods that could be an issue when supporting multiple languages, but has no specific fixing built in. This is because it’s not always clear that the method is an actual issue and the fix may involve some reworking that requires manual decisions. However, for some programming languages, we have written internationalization (i18n) help for the method that explains the reason for the detection as well as suggestions on what change might need to be made. When we don’t provide specific i18n help, we provide links to external help on the method, which sometimes provide information about i18n considerations.&lt;br /&gt;
&lt;br /&gt;
===What is the fix for the JavaScript locale-sensitive method charAt()?===&lt;br /&gt;
&lt;br /&gt;
In this case, Globalyzer detected &#039;&#039;&#039;charAt&#039;&#039;&#039; because it is a method that indexes into a string. If that string contains a translation, then the location of the character may have changed or it may not be the same character. The fix is really dependent on the usage. If the string is locale-independent, then you can insert an &#039;&#039;&#039;Ignore This Line&#039;&#039;&#039; comment so that Globalyzer will no longer flag this issue.&lt;br /&gt;
&lt;br /&gt;
===When will internationalization help be added for JavaScript locale-sensitive methods?=== &lt;br /&gt;
&lt;br /&gt;
We are always pressed to get more features into Globalyzer, but do try to spend as much time as possible adding to the help. In the meantime, if you have any specific questions, you should email support@lingoport.com and we’ll get an answer for you right away!&lt;br /&gt;
&lt;br /&gt;
===How do I add new JavaScript locale-sensitive methods or modify the description and help for existing methods?===&lt;br /&gt;
&lt;br /&gt;
If you have a Globalyzer Team Server license, you can add to or modify the default [[Rule Sets#Locale-Sensitive_Method_Scan_Rules|locale-sensitive methods]] for each programming language so that your users will also see your changes whenever they create a new Rule Set. If you’re using our hosted [http://www.globalyzer.com globalyzer.com] server, you can add to or modify the locale-sensitive methods of a specific [[Rule Sets#What_Are_Rule_Sets.3F|Rule Set]] that you create and then share with other Globalyzer users that are part of your team. That way, your team members will benefit from the work you have done in determining the resolution for locale-sensitive method issues. This approach applies to all Rule Set rules, such as General Patterns, Static File References, and all the many filters Globalyzer applies during code scanning.&lt;br /&gt;
&lt;br /&gt;
===When you create your rule set, can you specify the file extensions you would like scanned?===&lt;br /&gt;
The default for a java rule set is to scan files with the following extensions: java, jsp, jspf, and jspx. If you are only interested in jsp files, you can disable the others. Steps to do this:&lt;br /&gt;
&lt;br /&gt;
1) Log in to the server and select your java rule set&lt;br /&gt;
&lt;br /&gt;
2) Select Configure Source File Extensions&lt;br /&gt;
&lt;br /&gt;
3) Uncheck the file extensions you are not interested in&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
You can also configure the scan to look at only certain directories in your project. Steps to do this:&lt;br /&gt;
&lt;br /&gt;
1) Log into the client.&lt;br /&gt;
&lt;br /&gt;
2) Select your project in Project Explorer and select Scan-&amp;gt;Manage Scans&lt;br /&gt;
&lt;br /&gt;
3) Select the java scan and select Modify.&lt;br /&gt;
&lt;br /&gt;
4) Select the specific directories to scan, not just the entire project, and Finish&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
You can run your scan by selecting Scan-&amp;gt;Single Scan.&lt;br /&gt;
&lt;br /&gt;
===How do I create a rule set for the &#039;C&#039; language?===&lt;br /&gt;
&lt;br /&gt;
For the C language, you should choose one of our C++ variants. The main ones are &#039;&#039;&#039;ANSI UTF-8&#039;&#039;&#039;, &#039;&#039;&#039;ANSI UTF-16&#039;&#039;&#039;, &#039;&#039;&#039;Cross Platform UTF-8&#039;&#039;&#039;, &#039;&#039;&#039;Cross Platform UTF-16&#039;&#039;&#039;, &#039;&#039;&#039;Windows Generic&#039;&#039;&#039;, &#039;&#039;&#039;Windows MBCS&#039;&#039;&#039;, and &#039;&#039;&#039;Windows Unicode&#039;&#039;&#039;. If you are using GNU C, you will want to use one of the ANSI rule sets. UTF-8 if that’s how you want to support Unicode; UTF-16 if you will be using wide-character calls to support UTF-16 Unicode. If you are just running on Windows, then you can choose a Windows variant. If you’ll be running on both, then you’ll need a cross-platform rule set. The difference between the variants is the list of locale-sensitive methods Globalyzer will scan for in your code. To get a better feel, you can create a few rule set with the different variants and look at the locale-sensitive methods defined.&lt;/div&gt;</summary>
		<author><name>Mheilner</name></author>
	</entry>
	<entry>
		<id>https://wiki.lingoport.com/index.php?title=Rule_Sets_FAQ&amp;diff=359</id>
		<title>Rule Sets FAQ</title>
		<link rel="alternate" type="text/html" href="https://wiki.lingoport.com/index.php?title=Rule_Sets_FAQ&amp;diff=359"/>
		<updated>2012-06-11T20:45:18Z</updated>

		<summary type="html">&lt;p&gt;Mheilner: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Can I modify the Default Rule Sets?===&lt;br /&gt;
&lt;br /&gt;
If you have a Globalyzer Team Server license, you will be hosting the Globalyzer Server, and as the Administrator, you can modify any of the Default Rule Sets. &lt;br /&gt;
&lt;br /&gt;
If you are running from Lingoport&#039;s Globalyzer Server, you will not be able to modify the Default Rule Sets, but you can modify one of your own Rule Sets and then allow your team members to either use it (sharing) or copy it. This Rule Set can then be the starting point for their internationalization scanning and filtering process.&lt;br /&gt;
&lt;br /&gt;
===Where can I find help on “General Pattern” issues found in C++ code scanning?===&lt;br /&gt;
&lt;br /&gt;
If you login to the Globalyzer Server and look at the General Patterns for your rule set, it will often give information on why Globalyzer is scanning for this pattern. In addition, if you go to the Help system on the Globalyzer Server, there are various topics on C++ internationalization. In particular, click on &#039;&#039;&#039;Reference-&amp;gt;Locale-Sensitive Methods-&amp;gt;C++ Programming Language-&amp;gt;C++ Rule Sets&#039;&#039;&#039;. This help page talks about Unicode support in the various C++ rule sets. For example, usually a C++ program will be compiled with single-byte character strings. These single-bytes cannot support Unicode characters, which require more than 1 byte. That is the main reason why our C++ General Patterns scan for character strings:  You will have to make sure to modify them if they are to hold Unicode strings.&lt;br /&gt;
&lt;br /&gt;
===Does Globalyzer fix JavaScript locale-sensitive method issues?===&lt;br /&gt;
&lt;br /&gt;
Globalyzer detects methods that could be an issue when supporting multiple languages, but has no specific fixing built in. This is because it’s not always clear that the method is an actual issue and the fix may involve some reworking that requires manual decisions. However, for some programming languages, we have written internationalization (i18n) help for the method that explains the reason for the detection as well as suggestions on what change might need to be made. When we don’t provide specific i18n help, we provide links to external help on the method, which sometimes provide information about i18n considerations.&lt;br /&gt;
&lt;br /&gt;
===What is the fix for the JavaScript locale-sensitive method charAt()?===&lt;br /&gt;
&lt;br /&gt;
In this case, Globalyzer detected &#039;&#039;&#039;charAt&#039;&#039;&#039; because it is a method that indexes into a string. If that string contains a translation, then the location of the character may have changed or it may not be the same character. The fix is really dependent on the usage. If the string is locale-independent, then you can insert an &#039;&#039;&#039;Ignore This Line&#039;&#039;&#039; comment so that Globalyzer will no longer flag this issue.&lt;br /&gt;
&lt;br /&gt;
===When will internationalization help be added for JavaScript locale-sensitive methods?=== &lt;br /&gt;
&lt;br /&gt;
We are always pressed to get more features into Globalyzer, but do try to spend as much time as possible adding to the help. In the meantime, if you have any specific questions, you should email support@lingoport.com and we’ll get an answer for you right away!&lt;br /&gt;
&lt;br /&gt;
===How do I add new JavaScript locale-sensitive methods or modify the description and help for existing methods?===&lt;br /&gt;
&lt;br /&gt;
If you have a Globalyzer Team Server license, you can add to or modify the default [[Rule Sets#Locale-Sensitive_Method_Scan_Rules|locale-sensitive methods]] for each programming language so that your users will also see your changes whenever they create a new Rule Set. If you’re using our hosted [http://www.globalyzer.com globalyzer.com] server, you can add to or modify the locale-sensitive methods of a specific [[Rule Sets#What_Are_Rule_Sets.3F|Rule Set]] that you create and then share with other Globalyzer users that are part of your team. That way, your team members will benefit from the work you have done in determining the resolution for locale-sensitive method issues. This approach applies to all Rule Set rules, such as General Patterns, Static File References, and all the many filters Globalyzer applies during code scanning.&lt;br /&gt;
&lt;br /&gt;
===When you create your rule set, can you specify the file extensions you would like scanned?===&lt;br /&gt;
The default for a java rule set is to scan files with the following extensions: java, jsp, jspf, and jspx. If you are only interested in jsp files, you can disable the others. Steps to do this:&lt;br /&gt;
&lt;br /&gt;
1) Log in to the server and select your java rule set&lt;br /&gt;
&lt;br /&gt;
2) Select Configure Source File Extensions&lt;br /&gt;
&lt;br /&gt;
3) Uncheck the file extensions you are not interested in&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
You can also configure the scan to look at only certain directories in your project. Steps to do this:&lt;br /&gt;
&lt;br /&gt;
1) Log into the client.&lt;br /&gt;
&lt;br /&gt;
2) Select your project in Project Explorer and select Scan-&amp;gt;Manage Scans&lt;br /&gt;
&lt;br /&gt;
3) Select the java scan and select Modify.&lt;br /&gt;
&lt;br /&gt;
4) Select the specific directories to scan, not just the entire project, and Finish&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
You can run your scan by selecting Scan-&amp;gt;Single Scan.&lt;br /&gt;
&lt;br /&gt;
===How do I create a rule set for the &#039;C&#039; language?===&lt;br /&gt;
&lt;br /&gt;
For the C language, you should choose one of our C++ variants. The main ones are: &lt;br /&gt;
ANSI UTF-8 &lt;br /&gt;
ANSI UTF-16 &lt;br /&gt;
Cross Platform UTF-8 &lt;br /&gt;
Cross Platform UTF-16 &lt;br /&gt;
Windows Generic&lt;br /&gt;
Windows MBCS&lt;br /&gt;
Windows Unicode&lt;br /&gt;
&lt;br /&gt;
If you are using GNU C, you will want to use one of the ANSI rule sets. UTF-8 if that’s how you want to support Unicode UTF-16 if you will be using wide-character calls to support UTF-16 Unicode &lt;br /&gt;
If you are just running on Windows, then you can choose a Windows variant. &lt;br /&gt;
If you’ll be running on both, then you’ll need a cross-platform rule set.&lt;br /&gt;
&lt;br /&gt;
The difference between the variants is the list of locale-sensitive methods Globalyzer will scan for in your code. To get a better feel, you can create a few rule set with the different variants and look at the locale-sensitive methods defined.&lt;/div&gt;</summary>
		<author><name>Mheilner</name></author>
	</entry>
</feed>