PMD Results

The following document contains the results of PMD 5.6.1.

Files

org/devzendo/xplp/CreateLauncherMojo.java

Violation Line
The class 'CreateLauncherMojo' has a Cyclomatic Complexity of 5 (Highest = 11). 49443
Too many fields 49443
Avoid excessively long variable names like remoteRepositories 67
Avoid excessively long variable names like artifactMetadataSource 70
Avoid variables with short names like os 80
Private field 'libraryDirectory' could be made final; it is only initialized in the declaration or constructor. 115
Avoid excessively long variable names like narClassifierTypes 148
Private field 'launcherType' could be made final; it is only initialized in the declaration or constructor. 156
Private field 'bundleSignature' could be made final; it is only initialized in the declaration or constructor. 186
Private field 'stubType' could be made final; it is only initialized in the declaration or constructor. 211
Private field 'janelVersion' could be made final; it is only initialized in the declaration or constructor. 242
Private field 'janelBits' could be made final; it is only initialized in the declaration or constructor. 252
Private field 'janelDirectory' could be made final; it is only initialized in the declaration or constructor. 264
The method 'execute' has a Cyclomatic Complexity of 11. 269334
Potential violation of Law of Demeter (method chain calls) 270
Avoid excessively long variable names like transitiveArtifacts 278
Avoid excessively long variable names like resourceDirectories 279
Avoid excessively long variable names like parameterProperties 280
Potential violation of Law of Demeter (method chain calls) 281
Potential violation of Law of Demeter (method chain calls) 282
Potential violation of Law of Demeter (method chain calls) 283
Potential violation of Law of Demeter (method chain calls) 284
Potential violation of Law of Demeter (method chain calls) 285
Potential violation of Law of Demeter (method chain calls) 286
Potential violation of Law of Demeter (method chain calls) 287
Potential violation of Law of Demeter (method chain calls) 288
Position literals first in String comparisons 291
Position literals first in String comparisons 292
Position literals first in String comparisons 308
Potential violation of Law of Demeter (method chain calls) 309
Position literals first in String comparisons 316
Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 327
Potential violation of Law of Demeter (method chain calls) 330
New exception is thrown in catch block, original stack trace may be lost 332
Potential violation of Law of Demeter (method chain calls) 344
Consider using varargs for methods or constructors which take an array the last parameter. 353
Avoid variables with short names like sb 354
Avoid variables with short names like in 388
Avoid instantiating new objects inside loops 398
Potential violation of Law of Demeter (method chain calls) 408
Potential violation of Law of Demeter (method chain calls) 420422
Potential violation of Law of Demeter (method chain calls) 424
Potential violation of Law of Demeter (method chain calls) 425
Potential violation of Law of Demeter (method chain calls) 425
Potential violation of Law of Demeter (method chain calls) 425
Potential violation of Law of Demeter (method chain calls) 427
Potential violation of Law of Demeter (method chain calls) 431
New exception is thrown in catch block, original stack trace may be lost 432
Potential violation of Law of Demeter (method chain calls) 435
New exception is thrown in catch block, original stack trace may be lost 436
Potential violation of Law of Demeter (method chain calls) 439
New exception is thrown in catch block, original stack trace may be lost 440

org/devzendo/xplp/LauncherCreator.java

Violation Line
Possible God class (WMC=66, ATFD=37, TCC=0.0049261083743842365) 20525
Abstract classes should be named AbstractXXX 51525
This class has too many methods, consider refactoring it. 51525
Avoid excessively long variable names like mTransitiveArtifacts 57
Avoid excessively long variable names like mResourceDirectories 58
Avoid excessively long variable names like mParameterProperties 59
Avoid excessively long variable names like mNarClassifierTypes 62
Avoid long parameter lists. 7787
Avoid excessively long variable names like transitiveArtifacts 82
Avoid excessively long variable names like resourceDirectories 83
Avoid excessively long variable names like parameterProperties 84
Avoid excessively long variable names like narClassifierTypes 87
Consider using varargs for methods or constructors which take an array the last parameter. 87
Potential violation of Law of Demeter (method chain calls) 187
The String literal "Created " appears 4 times in this file; the first occurrence is on line 194 194
Potential violation of Law of Demeter (method chain calls) 194
Potential violation of Law of Demeter (method chain calls) 208
Potential violation of Law of Demeter (method chain calls) 216
New exception is thrown in catch block, original stack trace may be lost 217
Avoid instantiating new objects inside loops 224
Potential violation of Law of Demeter (method chain calls) 225
Potential violation of Law of Demeter (method chain calls) 228
Potential violation of Law of Demeter (method chain calls) 232
Potential violation of Law of Demeter (method chain calls) 237
Potential violation of Law of Demeter (method chain calls) 237
Consider simply returning the value vs storing it in local variable 'resourceAsStream' 238
Avoid excessively long variable names like transitiveArtifacts 248
Avoid excessively long variable names like transitiveArtifact 250
Potential violation of Law of Demeter (method chain calls) 251
Potential violation of Law of Demeter (method chain calls) 252
Potential violation of Law of Demeter (method chain calls) 253
Potential violation of Law of Demeter (method chain calls) 254
Potential violation of Law of Demeter (method chain calls) 254
Avoid excessively long variable names like destinationDirectory 268
Avoid excessively long variable names like destinationFileName 269
Avoid excessively long variable names like destinationDirectory 276
Avoid excessively long variable names like destinationFileName 277
Potential violation of Law of Demeter (method chain calls) 283
New exception is thrown in catch block, original stack trace may be lost 284
Potential violation of Law of Demeter (method chain calls) 292
New exception is thrown in catch block, original stack trace may be lost 293
Potential violation of Law of Demeter (method chain calls) 297301
Potential violation of Law of Demeter (method chain calls) 320
New exception is thrown in catch block, original stack trace may be lost 321
Avoid excessively long variable names like destinationDirectory 341
Potential violation of Law of Demeter (method chain calls) 342
Potential violation of Law of Demeter (method chain calls) 342
Avoid excessively long variable names like transitiveArtifacts 343
Potential violation of Law of Demeter (method chain calls) 344
Potential violation of Law of Demeter (method chain calls) 344
Potential violation of Law of Demeter (object not created locally) 344
Potential violation of Law of Demeter (method chain calls) 346
Potential violation of Law of Demeter (method chain calls) 349
Potential violation of Law of Demeter (method chain calls) 349
Avoid excessively long variable names like destinationDirectory 355
Potential violation of Law of Demeter (method chain calls) 357
Potential violation of Law of Demeter (method chain calls) 357
Potential violation of Law of Demeter (method chain calls) 358
Potential violation of Law of Demeter (method chain calls) 358
Potential violation of Law of Demeter (method chain calls) 362
Potential violation of Law of Demeter (method chain calls) 362
Potential violation of Law of Demeter (object not created locally) 364
Potential violation of Law of Demeter (object not created locally) 364
Potential violation of Law of Demeter (method chain calls) 365
Potential violation of Law of Demeter (method chain calls) 371
Potential violation of Law of Demeter (method chain calls) 371
Potential violation of Law of Demeter (method chain calls) 372
Potential violation of Law of Demeter (method chain calls) 372
Potential violation of Law of Demeter (method chain calls) 373
Potential violation of Law of Demeter (method chain calls) 373
Avoid excessively long variable names like destinationDirectory 378
Potential violation of Law of Demeter (method chain calls) 380
Potential violation of Law of Demeter (object not created locally) 380
Avoid excessively long variable names like destinationJarFileName 380
Potential violation of Law of Demeter (method chain calls) 385
Potential violation of Law of Demeter (method chain calls) 385
Avoid excessively long variable names like destinationDirectory 391
Potential violation of Law of Demeter (method chain calls) 394
Potential violation of Law of Demeter (method chain calls) 394
Avoid excessively long variable names like unpackedNarDirectory 395
Potential violation of Law of Demeter (method chain calls) 397399
Potential violation of Law of Demeter (method chain calls) 397399
Potential violation of Law of Demeter (method chain calls) 400
Potential violation of Law of Demeter (method chain calls) 400
Potential violation of Law of Demeter (method chain calls) 406
Potential violation of Law of Demeter (method chain calls) 406
Potential violation of Law of Demeter (object not created locally) 409
Position literals first in String comparisons 409
Potential violation of Law of Demeter (method chain calls) 410
Potential violation of Law of Demeter (method chain calls) 410
Potential violation of Law of Demeter (object not created locally) 413
Potential violation of Law of Demeter (object not created locally) 413
Potential violation of Law of Demeter (method chain calls) 415
Potential violation of Law of Demeter (method chain calls) 415
Avoid variables with short names like br 429
Avoid variables with short names like br 440
Avoid variables with short names like br 447
Avoid variables with short names like fw 452
Potential violation of Law of Demeter (object not created locally) 461
Potential violation of Law of Demeter (object not created locally) 462
Potential violation of Law of Demeter (object not created locally) 463
Potential violation of Law of Demeter (object not created locally) 464
Potential violation of Law of Demeter (object not created locally) 465
Potential violation of Law of Demeter (method chain calls) 469
Potential violation of Law of Demeter (method chain calls) 469
New exception is thrown in catch block, original stack trace may be lost 470
Potential violation of Law of Demeter (object not created locally) 475
Avoid using exceptions as flow control. 476
Avoid using exceptions as flow control. 476
Avoid using exceptions as flow control. 483
Potential violation of Law of Demeter (method chain calls) 487489
Potential violation of Law of Demeter (method chain calls) 487489
Potential violation of Law of Demeter (method chain calls) 499
New exception is thrown in catch block, original stack trace may be lost 500
Potential violation of Law of Demeter (method chain calls) 509
Potential violation of Law of Demeter (method chain calls) 509
Avoid variables with short names like cl 510
Potential violation of Law of Demeter (method chain calls) 517
Potential violation of Law of Demeter (method chain calls) 517
Potential violation of Law of Demeter (method chain calls) 518
Potential violation of Law of Demeter (method chain calls) 518
Potential violation of Law of Demeter (method chain calls) 519
Potential violation of Law of Demeter (method chain calls) 519
Potential violation of Law of Demeter (method chain calls) 522
Potential violation of Law of Demeter (method chain calls) 522

org/devzendo/xplp/LinuxLauncherCreator.java

Violation Line
Avoid long parameter lists. 4858
Avoid excessively long variable names like transitiveArtifacts 53
Avoid excessively long variable names like resourceDirectories 54
Avoid excessively long variable names like parameterProperties 55
Avoid excessively long variable names like narClassifierTypes 58
Consider using varargs for methods or constructors which take an array the last parameter. 58

org/devzendo/xplp/MacOSXAppLauncherCreator.java

Violation Line
Avoid long parameter lists. 7289
Avoid excessively long variable names like transitiveArtifacts 77
Avoid excessively long variable names like resourceDirectories 78
Avoid excessively long variable names like parameterProperties 79
Avoid excessively long variable names like narClassifierTypes 82
Potential violation of Law of Demeter (method chain calls) 107
Potential violation of Law of Demeter (method chain calls) 107
Potential violation of Law of Demeter (method chain calls) 112
Potential violation of Law of Demeter (method chain calls) 112
Potential violation of Law of Demeter (method chain calls) 117
Potential violation of Law of Demeter (method chain calls) 117
Potential violation of Law of Demeter (method chain calls) 128
Potential violation of Law of Demeter (method chain calls) 129
Potential violation of Law of Demeter (method chain calls) 130
Potential violation of Law of Demeter (method chain calls) 132
Potential violation of Law of Demeter (method chain calls) 132
Potential violation of Law of Demeter (method chain calls) 133
Potential violation of Law of Demeter (method chain calls) 133
Potential violation of Law of Demeter (method chain calls) 134
Potential violation of Law of Demeter (method chain calls) 134
Potential violation of Law of Demeter (method chain calls) 135
Potential violation of Law of Demeter (method chain calls) 135
Potential violation of Law of Demeter (method chain calls) 136
Potential violation of Law of Demeter (method chain calls) 136
Potential violation of Law of Demeter (method chain calls) 137
Potential violation of Law of Demeter (method chain calls) 137
Potential violation of Law of Demeter (method chain calls) 138
Potential violation of Law of Demeter (method chain calls) 138
Avoid excessively long variable names like javaApplicationStub 160
Consider using varargs for methods or constructors which take an array the last parameter. 177
Consider using varargs for methods or constructors which take an array the last parameter. 196
Avoid excessively long variable names like propsAsDictEntries 197
Avoid excessively long variable names like propsAsDictEntries 207
Avoid excessively long variable names like transitiveArtifacts 219
StringBuffer constructor is initialized with size 16, but has at least 43 characters appended. 220
Avoid excessively long variable names like transitiveArtifactFileNames 221

org/devzendo/xplp/MacOSXScriptLauncherCreator.java

Violation Line
Avoid long parameter lists. 5162
Avoid excessively long variable names like transitiveArtifacts 56
Avoid excessively long variable names like resourceDirectories 57
Avoid excessively long variable names like parameterProperties 58
Avoid excessively long variable names like narClassifierTypes 61
Potential violation of Law of Demeter (method chain calls) 75
Potential violation of Law of Demeter (method chain calls) 75

org/devzendo/xplp/PropertiesInterpolator.java

Violation Line
Avoid excessively long variable names like variableReferenceMatcher 36
Avoid using implementation types like 'HashSet'; use the interface instead 38
Avoid using implementation types like 'HashSet'; use the interface instead 38
Avoid variables with short names like s 63
Avoid variables with short names like sb 64
Avoid declaring a variable if it is unreferenced before a possible exit point. 72
Avoid appending characters as strings in StringBuffer.append. 79

org/devzendo/xplp/UnixScriptLauncherCreator.java

Violation Line
Avoid excessively long variable names like mOsOutputSubDirectoryName 40
Avoid long parameter lists. 5869
Avoid excessively long variable names like osOutputSubDirectoryName 60
Avoid excessively long variable names like transitiveArtifacts 64
Avoid excessively long variable names like resourceDirectories 65
Avoid excessively long variable names like parameterProperties 66
Avoid excessively long variable names like narClassifierTypes 69
Consider using varargs for methods or constructors which take an array the last parameter. 69
Potential violation of Law of Demeter (method chain calls) 91
Potential violation of Law of Demeter (method chain calls) 102
Potential violation of Law of Demeter (method chain calls) 103
Consider using varargs for methods or constructors which take an array the last parameter. 112
Consider using varargs for methods or constructors which take an array the last parameter. 116
Avoid excessively long variable names like transitiveArtifacts 124
Avoid excessively long variable names like transitiveArtifactFileNames 126

org/devzendo/xplp/WindowsLauncherCreator.java

Violation Line
The class 'WindowsLauncherCreator' has a Cyclomatic Complexity of 4 (Highest = 11). 35199
Avoid long parameter lists. 6277
Avoid excessively long variable names like transitiveArtifacts 67
Avoid excessively long variable names like resourceDirectories 68
Avoid excessively long variable names like parameterProperties 69
Avoid excessively long variable names like narClassifierTypes 72
The method validate() has an NPath complexity of 243 90116
The method 'validate' has a Cyclomatic Complexity of 11. 90116
Potential violation of Law of Demeter (method chain calls) 93
Potential violation of Law of Demeter (method chain calls) 93
Position literals first in String comparisons 96
Position literals first in String comparisons 96
Potential violation of Law of Demeter (method chain calls) 98
Potential violation of Law of Demeter (method chain calls) 98
Position literals first in String comparisons 101
Position literals first in String comparisons 101
Potential violation of Law of Demeter (method chain calls) 102
Potential violation of Law of Demeter (method chain calls) 102
Position literals first in String comparisons 106
Position literals first in String comparisons 106
Potential violation of Law of Demeter (method chain calls) 107
Potential violation of Law of Demeter (method chain calls) 107
Position literals first in String comparisons 111
Position literals first in String comparisons 111
Potential violation of Law of Demeter (method chain calls) 112
Potential violation of Law of Demeter (method chain calls) 112
Potential violation of Law of Demeter (method chain calls) 124
Potential violation of Law of Demeter (method chain calls) 125
Potential violation of Law of Demeter (method chain calls) 126
Potential violation of Law of Demeter (method chain calls) 128
Potential violation of Law of Demeter (method chain calls) 128
Position literals first in String comparisons 130
Avoid excessively long variable names like usingBinForBinaries 130
Potential violation of Law of Demeter (method chain calls) 136
Potential violation of Law of Demeter (method chain calls) 138
Potential violation of Law of Demeter (method chain calls) 150
Position literals first in String comparisons 165
Position literals first in String comparisons 166
Consider using varargs for methods or constructors which take an array the last parameter. 177
Consider using varargs for methods or constructors which take an array the last parameter. 188

org/devzendo/xplp/HelpMojo.java

Violation Line
Possible God class (WMC=70, ATFD=25, TCC=0.04395604395604396) 2458
The class 'HelpMojo' has a Cyclomatic Complexity of 5 (Highest = 11). 29458
Avoid excessively long variable names like DEFAULT_LINE_LENGTH 64
Potential violation of Law of Demeter (method chain calls) 69
Avoid variables with short names like is 70
Potential violation of Law of Demeter (method chain calls) 73
Local variable 'dbFactory' could be declared final 74
Local variable 'dBuilder' could be declared final 75
A throw statement in a finally block makes the control flow hard to understand. 90103
Potential violation of Law of Demeter (object not created locally) 96
The method 'execute' has a Cyclomatic Complexity of 11. 109172
The method execute() has an NPath complexity of 448 109172
Potential violation of Law of Demeter (method chain calls) 114
Potential violation of Law of Demeter (method chain calls) 119
Local variable 'doc' could be declared final 123
Local variable 'sb' could be declared final 125
Avoid variables with short names like sb 125
Local variable 'plugin' could be declared final 126
Local variable 'name' could be declared final 129
Local variable 'version' could be declared final 130
Local variable 'id' could be declared final 131
Avoid variables with short names like id 131
Potential violation of Law of Demeter (object not created locally) 132
Local variable 'goalPrefix' could be declared final 151
Local variable 'mojos1' could be declared final 153
Local variable 'mojos' could be declared final 155
Potential violation of Law of Demeter (object not created locally) 159
Potential violation of Law of Demeter (object not created locally) 159
Local variable 'mojo' could be declared final 163
Potential violation of Law of Demeter (method chain calls) 168
Potential violation of Law of Demeter (method chain calls) 170
Parameter 'string' is not assigned and could be declared final 175
Parameter 'elementName' is not assigned and could be declared final 180
Parameter 'node' is not assigned and could be declared final 180
Potential violation of Law of Demeter (method chain calls) 183
Parameter 'node' is not assigned and could be declared final 186
Parameter 'elementName' is not assigned and could be declared final 186
Local variable 'namedChild' could be declared final 189
Potential violation of Law of Demeter (object not created locally) 190
Potential violation of Law of Demeter (object not created locally) 194
Potential violation of Law of Demeter (object not created locally) 198
Parameter 'node' is not assigned and could be declared final 201
Parameter 'elementName' is not assigned and could be declared final 201
Local variable 'result' could be declared final 203
Local variable 'childNodes' could be declared final 204
Potential violation of Law of Demeter (object not created locally) 205
Local variable 'item' could be declared final 207
Potential violation of Law of Demeter (object not created locally) 207
Potential violation of Law of Demeter (object not created locally) 208
Parameter 'node' is not assigned and could be declared final 216
Parameter 'elementName' is not assigned and could be declared final 216
Local variable 'elementsByTagName' could be declared final 219
Potential violation of Law of Demeter (object not created locally) 220
Potential violation of Law of Demeter (object not created locally) 224
Potential violation of Law of Demeter (object not created locally) 228
Parameter 'goalPrefix' is not assigned and could be declared final 231
Parameter 'mojo' is not assigned and could be declared final 231
Parameter 'sb' is not assigned and could be declared final 231
The method 'writeGoal' has a Cyclomatic Complexity of 11. 231269
Avoid variables with short names like sb 231
Local variable 'mojoGoal' could be declared final 234
Avoid excessively long variable names like configurationElement 235
Local variable 'configurationElement' could be declared final 235
Local variable 'description' could be declared final 236
Potential violation of Law of Demeter (object not created locally) 237
Local variable 'deprecated' could be declared final 240
Potential violation of Law of Demeter (object not created locally) 241
Potential violation of Law of Demeter (object not created locally) 243
Potential violation of Law of Demeter (object not created locally) 247
Potential violation of Law of Demeter (object not created locally) 252
Local variable 'parametersNode' could be declared final 258
Local variable 'parameters' could be declared final 259
Local variable 'parameter' could be declared final 263
Avoid variables with short names like sb 271
Parameter 'configurationElement' is not assigned and could be declared final 271
Parameter 'parameter' is not assigned and could be declared final 271
Avoid excessively long variable names like configurationElement 271
Parameter 'sb' is not assigned and could be declared final 271
Local variable 'parameterName' could be declared final 274
Avoid excessively long variable names like parameterDescription 275
Local variable 'parameterDescription' could be declared final 275
Avoid excessively long variable names like fieldConfigurationElement 277
Avoid excessively long variable names like parameterDefaultValue 283
Potential violation of Law of Demeter (object not created locally) 284
Potential violation of Law of Demeter (object not created locally) 286
Local variable 'deprecated' could be declared final 289
Potential violation of Law of Demeter (object not created locally) 290
Potential violation of Law of Demeter (object not created locally) 292
Potential violation of Law of Demeter (object not created locally) 300
Potential violation of Law of Demeter (object not created locally) 302
Local variable 'property' could be declared final 302
Parameter 'repeat' is not assigned and could be declared final 318
Parameter 'str' is not assigned and could be declared final 318
Local variable 'buffer' could be declared final 320
Parameter 'sb' is not assigned and could be declared final 338
Parameter 'indent' is not assigned and could be declared final 338
Parameter 'description' is not assigned and could be declared final 338
Avoid variables with short names like sb 338
Local variable 'line' could be declared final 340
Parameter 'lineLength' is not assigned and could be declared final 356
Parameter 'text' is not assigned and could be declared final 356
Parameter 'indentSize' is not assigned and could be declared final 356
Parameter 'indent' is not assigned and could be declared final 356
Local variable 'lines' could be declared final 358
Local variable 'ind' could be declared final 360
Local variable 'plainLines' could be declared final 362
Local variable 'plainLine' could be declared final 364
Parameter 'lineLength' is not assigned and could be declared final 380
Parameter 'indentSize' is not assigned and could be declared final 380
Parameter 'lines' is not assigned and could be declared final 380
Parameter 'line' is not assigned and could be declared final 380
Local variable 'lineIndent' could be declared final 382
Local variable 'buf' could be declared final 383
Local variable 'tokens' could be declared final 385
Local variable 'token' could be declared final 387
Avoid variables with short names like c 405
Local variable 'c' could be declared final 405
Parameter 'line' is not assigned and could be declared final 429
Parameter 'expression' is not assigned and could be declared final 447
Potential violation of Law of Demeter (method chain calls) 450