This project is just a parent POM for all other Java projects in "jcabi family".
See www.jcabi.com website for more details.
A convenient parent Maven POM artifact, which we recommend using in all Maven projects
Home Page: https://parent.jcabi.com/
License: Other
This project is just a parent POM for all other Java projects in "jcabi family".
See www.jcabi.com website for more details.
Review our existing source code and all other technical artifacts and report at least 8 bugs. More about such reviews you can read here. The task will be closed once we have that bugs reported and classified. Don't forget to add itr
tag to each of them.
New version (0.14
) of qulice has been released with few bug fixes, please upgrade parent pom to this new version.
There is new version of hamcrest library available:
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>java-hamcrest</artifactId>
<version>2.0.0.0</version>
</dependency>
Notice, that they changed the artifactId.
Please upgrade parent to the above new hamcrest version.
There is no estimate in the project yet. We have to create one as explained here
We're encountering error "Could not transfer artifact com.jcabi:parent:xml:site_en:0.31 from/to repo.xockets.teamed.io" while running mvn clean site -Psite.
It looks like the only workaround for this is to add an empty (or one line) site_en.xml file in this project.
/usr/lib/jvm/java-7-openjdk-amd64/bin/java -Dmaven.home=/home/alexander/Soft/apache-maven-3.1.1 -Dclassworlds.conf=/home/alexander/Soft/apache-maven-3.1.1/bin/m2.conf -Didea.launcher.port=7534 -Didea.launcher.bin.path=/home/alexander/Soft/idea/idea-IU-139.659.2/bin -Dfile.encoding=UTF-8 -classpath /home/alexander/Soft/apache-maven-3.1.1/boot/plexus-classworlds-2.5.1.jar:/home/alexander/Soft/idea/idea-IU-139.659.2/lib/idea_rt.jar com.intellij.rt.execution.application.AppMain org.codehaus.classworlds.Launcher -Didea.version=14.0.2 site:site -P site
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building xockets-layer 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-site-plugin:3.4:site (default-cli) @ xockets-layer ---
[INFO] configuring report plugin org.apache.maven.plugins:maven-project-info-reports-plugin:2.7
[INFO] configuring report plugin org.apache.maven.plugins:maven-jxr-plugin:2.4
[INFO] configuring report plugin org.apache.maven.plugins:maven-surefire-report-plugin:2.17
[INFO] configuring report plugin org.codehaus.mojo:versions-maven-plugin:2.1
[INFO] configuring report plugin org.apache.maven.plugins:maven-javadoc-plugin:2.9.1
[INFO] preparing 'javadoc' report requires 'generate-sources' forked phase execution
[INFO]
[INFO] >>> maven-javadoc-plugin:2.9.1:javadoc @ xockets-layer >>>
[INFO]
[INFO] <<< maven-javadoc-plugin:2.9.1:javadoc @ xockets-layer <<<
[INFO] preparing 'test-javadoc' report requires 'generate-test-sources' forked phase execution
[INFO]
[INFO] >>> maven-javadoc-plugin:2.9.1:test-javadoc @ xockets-layer >>>
[INFO]
[INFO] --- buildnumber-maven-plugin:1.3:create (jcabi-build-number) @ xockets-layer ---
[INFO] ShortRevision tag detected. The value is '7'.
[INFO] Executing: /bin/sh -c cd /home/alexander/Documents/teamed/xockets-layer && git rev-parse --verify --short=7 HEAD
[INFO] Working directory: /home/alexander/Documents/teamed/xockets-layer
[INFO] Storing buildNumber: d84efd9 at timestamp: 2015-01-15T10:44:13
[INFO] Storing buildScmBranch: 13
[INFO]
[INFO] --- buildnumber-maven-plugin:1.3:create-timestamp (jcabi-build-number) @ xockets-layer ---
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ xockets-layer ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /home/alexander/Documents/teamed/xockets-layer/src/main/resources
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ xockets-layer ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 24 source files to /home/alexander/Documents/teamed/xockets-layer/target/classes
[INFO]
[INFO] --- jcabi-maven-plugin:0.9.3:ajc (jcabi-ajc-compile) @ xockets-layer ---
[INFO] jcabi-aspects 0.17.1/8b0e260 started new daemon thread jcabi-loggable for watching of @Loggable annotated methods
[INFO] Created temp dir /home/alexander/Documents/teamed/xockets-layer/target/jcabi-ajc
[INFO] jcabi-aspects 0.17.1/8b0e260 started new daemon thread jcabi-cacheable for automated cleaning of expired @Cacheable values
[WARNING] advice defined in com.jcabi.aspects.aj.MethodValidator has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.SingleException has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.ExceptionsLogger has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodLogger has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodAsyncRunner has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodCacher has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodScheduler has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.Parallelizer has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.QuietExceptionsLogger has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodInterrupter has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.Repeater has not been applied [Xlint:adviceDidNotMatch]
[INFO] ajc result: 31 file(s) processed, 6 pointcut(s) woven, 0 error(s), 11 warning(s)
[INFO]
[INFO] <<< maven-javadoc-plugin:2.9.1:test-javadoc @ xockets-layer <<<
[INFO] configuring report plugin org.codehaus.mojo:cobertura-maven-plugin:2.5.2
[INFO] preparing 'cobertura' report requires '[cobertura]test' forked phase execution
[INFO]
[INFO] >>> cobertura-maven-plugin:2.5.2:cobertura @ xockets-layer >>>
[INFO]
[INFO] --- buildnumber-maven-plugin:1.3:create (jcabi-build-number) @ xockets-layer ---
[INFO] ShortRevision tag detected. The value is '7'.
[INFO] Executing: /bin/sh -c cd /home/alexander/Documents/teamed/xockets-layer && git rev-parse --verify --short=7 HEAD
[INFO] Working directory: /home/alexander/Documents/teamed/xockets-layer
[INFO] Storing buildNumber: d84efd9 at timestamp: 2015-01-15T10:44:20
[INFO] Storing buildScmBranch: 13
[INFO]
[INFO] --- buildnumber-maven-plugin:1.3:create-timestamp (jcabi-build-number) @ xockets-layer ---
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ xockets-layer ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /home/alexander/Documents/teamed/xockets-layer/src/main/resources
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ xockets-layer ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 24 source files to /home/alexander/Documents/teamed/xockets-layer/target/classes
[INFO]
[INFO] --- jcabi-maven-plugin:0.9.3:ajc (jcabi-ajc-compile) @ xockets-layer ---
[WARNING] advice defined in com.jcabi.aspects.aj.MethodValidator has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.SingleException has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.ExceptionsLogger has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodLogger has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodAsyncRunner has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodCacher has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodScheduler has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.Parallelizer has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.QuietExceptionsLogger has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodInterrupter has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.Repeater has not been applied [Xlint:adviceDidNotMatch]
[INFO] ajc result: 31 file(s) processed, 6 pointcut(s) woven, 0 error(s), 11 warning(s)
[INFO]
[INFO] --- cobertura-maven-plugin:2.5.2:instrument @ xockets-layer ---
[INFO] Cobertura 1.9.4.1 - GNU GPL License (NO WARRANTY) - See COPYRIGHT file
Instrumenting 31 files to /home/alexander/Documents/teamed/xockets-layer/target/generated-classes/cobertura
Cobertura: Saved information on 31 classes.
Instrument time: 259ms
[INFO] Instrumentation was successful.
[INFO] NOT adding cobertura ser file to attached artifacts list.
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ xockets-layer ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO]
[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ xockets-layer ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 16 source files to /home/alexander/Documents/teamed/xockets-layer/target/test-classes
[INFO]
[INFO] --- jcabi-maven-plugin:0.9.3:ajc (jcabi-ajc-test-compile) @ xockets-layer ---
[INFO] Created temp dir /home/alexander/Documents/teamed/xockets-layer/target/jcabi-ajc-test
[WARNING] build config error: skipping missing, empty or corrupt aspectpath entry: /home/alexander/.m2/repository/net/sourceforge/cobertura/cobertura-runtime/1.9.4.1/cobertura-runtime-1.9.4.1.pom
[WARNING] advice defined in com.jcabi.aspects.aj.MethodValidator has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.SingleException has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.ExceptionsLogger has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodLogger has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodAsyncRunner has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodCacher has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodScheduler has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.Parallelizer has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.QuietExceptionsLogger has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodInterrupter has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.Repeater has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.ImmutabilityChecker has not been applied [Xlint:adviceDidNotMatch]
[INFO] ajc result: 24 file(s) processed, 0 pointcut(s) woven, 0 error(s), 13 warning(s)
[INFO]
[INFO] --- maven-surefire-plugin:2.17:test (default-test) @ xockets-layer ---
[INFO] Surefire report directory: /home/alexander/Documents/teamed/xockets-layer/target/surefire-reports
[INFO] parallel='all', perCoreThreadCount=true, threadCount=4, useUnlimitedThreads=false, threadCountSuites=0, threadCountClasses=0, threadCountMethods=0, parallelOptimized=true
-------------------------------------------------------
T E S T S
-------------------------------------------------------
...
Results :
Tests run: 29, Failures: 0, Errors: 0, Skipped: 0
[INFO]
[INFO] <<< cobertura-maven-plugin:2.5.2:cobertura @ xockets-layer <<<
[INFO] configuring report plugin org.apache.maven.plugins:maven-plugin-plugin:3.3
[INFO] preparing 'report' report requires 'process-classes' forked phase execution
[INFO]
[INFO] >>> maven-plugin-plugin:3.3:report @ xockets-layer >>>
[INFO]
[INFO] --- buildnumber-maven-plugin:1.3:create (jcabi-build-number) @ xockets-layer ---
[INFO] ShortRevision tag detected. The value is '7'.
[INFO] Executing: /bin/sh -c cd /home/alexander/Documents/teamed/xockets-layer && git rev-parse --verify --short=7 HEAD
[INFO] Working directory: /home/alexander/Documents/teamed/xockets-layer
[INFO] Storing buildNumber: d84efd9 at timestamp: 2015-01-15T10:44:41
[INFO] Storing buildScmBranch: 13
[INFO]
[INFO] --- buildnumber-maven-plugin:1.3:create-timestamp (jcabi-build-number) @ xockets-layer ---
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ xockets-layer ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /home/alexander/Documents/teamed/xockets-layer/src/main/resources
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ xockets-layer ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 24 source files to /home/alexander/Documents/teamed/xockets-layer/target/classes
[INFO]
[INFO] --- jcabi-maven-plugin:0.9.3:ajc (jcabi-ajc-compile) @ xockets-layer ---
[WARNING] advice defined in com.jcabi.aspects.aj.MethodValidator has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.SingleException has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.ExceptionsLogger has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodLogger has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodAsyncRunner has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodCacher has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodScheduler has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.Parallelizer has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.QuietExceptionsLogger has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.MethodInterrupter has not been applied [Xlint:adviceDidNotMatch]
[WARNING] advice defined in com.jcabi.aspects.aj.Repeater has not been applied [Xlint:adviceDidNotMatch]
[INFO] ajc result: 31 file(s) processed, 6 pointcut(s) woven, 0 error(s), 11 warning(s)
[INFO]
[INFO] <<< maven-plugin-plugin:3.3:report @ xockets-layer <<<
[INFO] Parent project loaded from repository: com.jcabi:parent:pom:0.31
Downloading: s3://repo.xockets.teamed.io/snapshot/com/jcabi/parent/0.31/parent-0.31-site_en.xml
[WARNING] s3://repo.xockets.teamed.io/snapshot - Connection refused
[INFO] Logged off - repo.xockets.teamed.io
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 37.487s
[INFO] Finished at: Thu Jan 15 10:44:44 YEKT 2015
[INFO] Final Memory: 53M/681M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-site-plugin:3.4:site (default-cli) on project xockets-layer: SiteToolException: The site descriptor cannot be resolved from the repository: ArtifactResolutionException: Unable to locate site descriptor: Could not transfer artifact com.jcabi:parent:xml:site_en:0.31 from/to repo.xockets.teamed.io (s3://repo.xockets.teamed.io/snapshot): Could not connect to repository
[ERROR] com.jcabi:parent:xml:0.31
[ERROR]
[ERROR] from the specified remote repositories:
[ERROR] repo.xockets.teamed.io (s3://repo.xockets.teamed.io/snapshot, releases=true, snapshots=true),
[ERROR] oss.sonatype.org (https://oss.sonatype.org/content/groups/public, releases=true, snapshots=true),
[ERROR] central (http://repo.maven.apache.org/maven2, releases=true, snapshots=false): Unable to load AWS credentials from any provider in the chain
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
Process finished with exit code 1
Let's add rempl
profile
There is at least one instance when we need the build number during the source-processing phase: in jcabi-aspects we process sources in order to insert project version and build number right into sources.
I think that buildnumber-maven-plugin
's phase should be changed from process-resources
to process-sources
or even to initialize
, because process-resources
happens later in the default lifecycle than the other two.
Even with the latest version of the parent pom which is 0.43
while I'm creating this ticket, there are many third party libraries that could be upgraded.
Indeed if I launch the command mvn versions:display-dependency-updates
I get the next output:
[INFO] The following dependencies in Dependency Management have newer versions:
[INFO] com.jcabi:jcabi-aspects ............................. 0.22.3 -> 0.22.4
[INFO] com.jcabi:jcabi-dynamo ................................ 0.21 -> 0.21.1
[INFO] com.jcabi:jcabi-email ..................................... 1.7 -> 1.8
[INFO] com.jcabi:jcabi-s3 .................................. 0.11.4 -> 0.11.5
[INFO] commons-collections:commons-collections ............ 3.2.2 -> 20040616
[INFO] commons-io:commons-io ..................................... 2.4 -> 2.5
[INFO] commons-net:commons-net ................................... 3.4 -> 3.5
[INFO] org.antlr:antlr4-runtime ............................ 4.5.2-1 -> 4.5.3
[INFO] org.apache.commons:commons-math3 ........................ 3.6 -> 3.6.1
[INFO] org.mockito:mockito-core .................. 2.0.44-beta -> 2.0.53-beta
[INFO] org.slf4j:slf4j-log4j12 ............................. 1.7.19 -> 1.7.21
[INFO] xml-apis:xml-apis .................................... 1.4.01 -> 2.0.2
Let's use the latest version of Github site plugin
Due to bug in Maven, qulice-maven-plugin
with Maven < 3.1.0
fails with NPE:
org.apache.maven.InternalErrorException: Internal error: java.lang.NullPointerException
at org.apache.maven.lifecycle.internal.BuilderCommon.handleBuildError(BuilderCommon.java:128)
Maven 3.0.4
still remains default version for majority of Linux installations and is bundled with IntelliJ.
Let's add requirement to parent, that minimal Maven version to use is 3.1.0
.
Detailed stacktrace:
[ERROR] Internal error: java.lang.NullPointerException -> [Help 1]
org.apache.maven.InternalErrorException: Internal error: java.lang.NullPointerException
at org.apache.maven.lifecycle.internal.BuilderCommon.handleBuildError(BuilderCommon.java:128)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:95)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: java.lang.NullPointerException
at org.codehaus.plexus.component.configurator.converters.composite.CollectionConverter.fromChildren(CollectionConverter.java:157)
at org.codehaus.plexus.component.configurator.converters.composite.CollectionConverter.fromConfiguration(CollectionConverter.java:112)
at org.codehaus.plexus.component.configurator.converters.ComponentValueSetter.configure(ComponentValueSetter.java:289)
at org.codehaus.plexus.component.configurator.converters.composite.ObjectWithFieldsConverter.processConfiguration(ObjectWithFieldsConverter.java:161)
at org.codehaus.plexus.component.configurator.BasicComponentConfigurator.configureComponent(BasicComponentConfigurator.java:56)
at org.apache.maven.plugin.internal.DefaultMavenPluginManager.populatePluginFields(DefaultMavenPluginManager.java:567)
at org.apache.maven.plugin.internal.DefaultMavenPluginManager.getConfiguredMojo(DefaultMavenPluginManager.java:529)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:92)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
... 16 more
Let's add such configuration to pom.xml
We're using a very strange version of the Maven Release plugin here:
we got:
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>3.0-r1585899</version>
</plugin>
which is not a stable version and as of now also not available on Sonatype or Maven Central according to:
https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-release-plugin/3.0-r1585899
I think the version needs to be adjusted to 2.5.3
, this is currently breaking builds in our projects by
[WARNING] The POM for org.apache.maven.plugins:maven-release-plugin:jar:3.0-r1585899 is missing, no dependency information available
[WARNING] Failed to retrieve plugin descriptor for org.apache.maven.plugins:maven-release-plugin:3.0-r1585899: Plugin org.apache.maven.plugins:maven-release-plugin:3.0-r1585899 or one of its dependencies could not be resolved: Failure to find org.apache.maven.plugins:maven-release-plugin:jar:3.0-r1585899 in https://oss.sonatype.org/content/groups/public was cached in the local repository, resolution will not be reattempted until the update interval of oss.sonatype.org has elapsed or updates are forced
Let's remove it
gmaven-plugin has been discontinued and there is a dependency incompatibility between groovy-all 2.3.3 and gmaven-plugin that uses groovy 2.0 (see providerSelection = 2.0).
It leads to errors with Spock Framework.
gmaven-plugin should be replaced by gmavenplus-plugin.
<plugin>
<groupId>org.codehaus.gmavenplus</groupId>
<artifactId>gmavenplus-plugin</artifactId>
<version>1.5</version>
</plugin>
In children projects parent's qulice configuration is ignored. This leads to the bugs like jcabi/jcabi-email#11 and jcabi/jcabi-manifests#16.
mvn help:effective-pom does list qulice configuration present.
mvn help:active-profiles does list qulice profile present.
mvn -X qulice:check -Pqulice lists the following:
[DEBUG] Goal: com.qulice:qulice-maven-plugin:0.10:check (default-cli)
[DEBUG] Style: Regular
[DEBUG] Configuration:
< configuration>
< asserts>${qulice.asserts}< /asserts>
< excludes>${qulice.excludes}< /excludes>
< license default-value="LICENSE.txt">${qulice.license}< /license>
< skip default-value="false">${qulice.skip}< /skip>
< project default-value="${project}"/>
< session default-value="${session}"/>
< /configuration>
and
[DEBUG] Configuring mojo 'com.qulice:qulice-maven-plugin:0.10:check' with basic configurator -->
[DEBUG] '(s) asserts = []
[DEBUG] '(s) excludes = []
[DEBUG] '(s) license = LICENSE.txt
[DEBUG] '(s) skip = false
[DEBUG] '(s) project = MavenProject: com.jcabi:jcabi-manifests:2.0-SNAPSHOT @ %path to project%\jcabi-manifests\pom.xml
[DEBUG] '(f) session = org.apache.maven.execution.MavenSession@6889634c
[DEBUG] -- end configuration --
@yegor256 releasing the current state would save me some time in one of our projects.
The release pipeline is broken, due to the Jacoco issues now apparently resolved here.
So a quick release saves me 15 min for a rollback and meddling with Rultor etc :)
Thanks
@dmarkov Looks like we need to add .gitattributes to force EOL of the repo.
Hi,
parent pom contains a repositories element which forces maven to look for artifacts in an external repository:
<repositories>
<!--
You should keep it empty in your project.
@see http://www.sonatype.com/people/2009/02/why-putting-repositories-in-your-poms-is-a-bad-idea/
-->
<repository>
<id>oss.sonatype.org</id>
<url>https://oss.sonatype.org/content/groups/public</url>
</repository>
</repositories>
There are workarounds for this issue, however it would be better if the repository resolution stuff was left over for the settings.xml to handle.
Copyright sections still feature 2014 as a year.
Currently, we have a dependency on the mockito-core:1.9.5 which depends on hamcrest-core:1.1
Under certain circumstances this might cause dependency collisions
(https://tedvinke.wordpress.com/2013/12/17/mixing-junit-hamcrest-and-mockito-explaining-nosuchmethoderror/)
We should exclude hamcrest-core from mockito-core.
jcabi-parent uses qulice version 0.14 but the latest version is 0.15.2. Let's update it
It is not used anymore by antlr4: the last antlr-runtime
version 4.5 removed it:
https://github.com/antlr/antlr4/releases/tag/4.5
Be aware that we no longer deploy a maven antlr4-annotations artifact and in fact we no longer use Java annotations in the Java runtime and so that code is disappeared.
Other reasons to remove it:
It would also be nice to increase the version of antlr-maven-plugin
to 4.5 or 4.5.1
Cobertura is very error-prone and slower than jacoco (cobertura needs to execute tests again, jacoco uses agent to listen to the tests being executed), so upgrading should give us more reliability and speed up builds of the projects.
We need to upgrade qulice-maven-plugin to 0.12 to resolve the issue yegor256/qulice#366.
Merging user settings fixes cases when user has a proxy or mirror defined and IT tests try to download artifacts (which fails if user is behind a proxy).
adding
<configuration>
<mergeUserSettings>true</mergeUserSettings>
</configuration>
to maven-invoker-plugin will fix the problem.
During the work on https://github.com/teamed/xockets-hadoop-transport/issues/1086
We've faced with a bug cobertura/cobertura#230
It prevents "site" profile (defined in a parent pom) to work properly.
java.lang.ClassNotFoundException: net.sourceforge.cobertura.coveragedata.TouchCollector
I propose to downgrade cobertura-maven-plugin to 2.6 in a parent pom
let's upgrade it
maven-invoker-plugin
version 1.8 has a bug that causes an error when mergeUserSettings
is set to true
and it's run with Maven 3.2.2. See http://jira.codehaus.org/browse/MINVOKER-166.
Version 1.9 fixes this bug. Let's upgrade to that.
Currently, we are specifying jcabi-github
version 0.17
in pom.xml
. This version of jcabi-github
has a bug that prevents one of the mock classes, MkStorage.Infile
from being instantiated, due to mutability issues (see jcabi/jcabi-github#934). This effectively prevents the usage of the entire mock unit testing framework provided by jcabi-github
.
Let's update this dependency to a later version, at least 0.18.3
, which fixes this bug. Preferably a later version (current is 0.21.3
). See https://github.com/jcabi/jcabi-github/releases for the list of releaes.
All XML files are excluded by default from Qulice check: https://github.com/jcabi/jcabi-parent/blob/0.40.1/pom.xml#L234
Majority of problems with Qulice's XML validation was solved recently and moreover in case of any problems XML check could be skipped for each project separately.
Let's remove that suppression.
While trying to figure out why I get in my project error of types:
JSR-303 validator failed to initialize: Unable to instantiate Configuration
JSR-303 validator failed to initialize: HV000183: Unable to load 'javax.el.ExpressionFactory'. Check that you have the EL dependencies on the classpath, or use ParameterMessageInterpolator instead
I realized that If I add the following dependency to the profile jcabi-versionalize-packages
I don't have the errors anymore
<dependencies>
<dependency>
<groupId>javax.el</groupId>
<artifactId>javax.el-api</artifactId>
<version>3.0.1-b04</version>
<scope>runtime</scope>
</dependency>
</dependencies>
The complete profile is then:
<profile>
<!--
For every Java package it creates a VERSION.txt file in
"src/main/resources" directory. This is done in order to help
with identification of currently used version of a package.
-->
<id>jcabi-versionalize-packages</id>
<activation>
<file>
<exists>${basedir}/src/main/java</exists>
</file>
</activation>
<build>
<plugins>
<plugin>
<groupId>com.jcabi</groupId>
<artifactId>jcabi-maven-plugin</artifactId>
<version>0.13.2</version>
<executions>
<execution>
<id>jcabi-versionalize-packages</id>
<goals>
<goal>versionalize</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>javax.el</groupId>
<artifactId>javax.el-api</artifactId>
<version>3.0.1-b04</version>
<scope>runtime</scope>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</profile>
I don't know if it makes sense to modify it directly into the parent pom or if it should be fixed injcabi-maven-plugin
directly but in both cases a new release of the parent pom will be needed so I create the ticket and let you do what is the best.
In the license.txt file the Copyright year should be 2016
Issue 144 in jcabi-github wants to use cobertura. But it looks like the surefire plugin configured in this parent pom is preventing this. The configuration should be updated to allow cobertura to run.
coveralls maven plugin will fail to build when using jcabi parent, as it is not able to parse the defined maven.build.timestamp.format
from jcabis pom.xml
.
to fix this issue, you need to provide a custom datefomat in coveralls plugin-configuration (as already mentioned in jcabi/jcabi-jdbc#53)
<plugin>
<groupId>org.eluder.coveralls</groupId>
<artifactId>coveralls-maven-plugin</artifactId>
<version>4.2.0</version>
<configuration>
<timestampFormat>yyyy-MM-dd'T'HH:mm:ss</timestampFormat>
</configuration>
</plugin>
Because so many people out there are using coveralls service I think this is a very crucial peace of information that should be made visible either in the README.MD
or on http://parent.jcabi.com/index.html (or both)
let's upgrade
See http://stackoverflow.com/questions/29995139/maven-versions-maven-plugin-versions-plugin-2-2
Let's downgrade it to 2.1
This version of the plugin contains a fix of bug which causes unit tests hanging (yegor256/qulice#303)
The current used version is 2.17
We need to upgrade jcabi-log to 0.15.1 to resolve the issue jcabi/jcabi-mysql-maven-plugin#30
I encountered an issue when trying to migrate from parent
version 0.13.1
to 0.18.1
in yegor256/s3auth#123. The hibernate-validator
version in parent 0.13.1
is 5.1.0.Alpha1
while the one in the latest parent is 5.1.0.Final
. When I tried to migrate to parent 0.18.1
, the validations stopped working:
Failed tests:
DynamoHostsTest.rejectsInvalidUserNames Expected exception: javax.validation.ConstraintViolationException
DynamoHostsTest.rejectsBrokenDomains:192 exception expected for Mock for Domain, hashCode: 18135515
I looked at hibernate-validator's repo and noticed that they specified that a Unified Expression Langauge API is needed. It worked after I added the following dependency to pom.xml
:
<dependency>
<groupId>javax.el</groupId>
<artifactId>javax.el-api</artifactId>
<version>2.2.4</version>
<scope>provided</scope>
</dependency>
I think it would be a good thing to add to parent
. Strictly speaking I'd still have to specify it in the local pom but it would be nice to have the version managed from parent
.
Please, publish a new release 0.33 (or higher). Don't forget to update us here regularly (at least once a week), as explained in this article.
Version 3.2.1 has a CVSS 10.0 vulnerability. That is the worst kind of
vulnerability that exists. By merely existing on the classpath, this
library causes the Java serialization parser for the entire JVM process
to go from being a state machine to a turing machine. A turing machine
with an exec() function!
https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2015-8103
https://commons.apache.org/proper/commons-collections/security-reports.html
http://foxglovesecurity.com/2015/11/06/what-do-weblogic-websphere-jboss-jenkins-opennms-and-your-application-have-in-common-this-vulnerability/
Let's upgrade them
Trying to run mvn clean site -Psite
I'm getting:
[WARNING] build config error: skipping missing, empty or corrupt aspectpath entry: /Users/yegor/.m2/repository/net/sourceforge/cobertura/cobertura-runtime/2.0.3/cobertura-runtime-2.0.3.pom
[WARNING] build config error: skipping missing, empty or corrupt aspectpath entry: /Users/yegor/.m2/repository/com/sun/tools/0/tools-0.jar
[DEBUG] main com.jcabi.maven.plugin.AjcMojo: directory classpath entry does not exist: /Library/Java/JavaVirtualMachines/jdk1.7.0_12.jdk/Contents/Home/jre/lib/sunrsasign.jar
[DEBUG] main com.jcabi.maven.plugin.AjcMojo: zipfile classpath entry does not exist: /Library/Java/JavaVirtualMachines/jdk1.7.0_12.jdk/Contents/Home/jre/classes
[DEBUG] main com.jcabi.maven.plugin.AjcMojo: directory classpath entry does not exist: /Users/yegor/.m2/repository/com/sun/tools/0/tools-0.jar
org.aspectj.apache.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 60
at org.aspectj.apache.bcel.classfile.Constant.readConstant(Constant.java:139)
at org.aspectj.apache.bcel.classfile.ConstantPool.<init>(ConstantPool.java:45)
at org.aspectj.apache.bcel.classfile.ClassParser.readConstantPool(ClassParser.java:186)
at org.aspectj.apache.bcel.classfile.ClassParser.parse(ClassParser.java:131)
at org.aspectj.weaver.bcel.BcelWeaver.addAspectsFromJarFile(BcelWeaver.java:262)
at org.aspectj.weaver.bcel.BcelWeaver.addLibraryJarFile(BcelWeaver.java:238)
at org.aspectj.ajdt.internal.core.builder.AjBuildManager.initBcelWorld(AjBuildManager.java:871)
at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performBuild(AjBuildManager.java:249)
at org.aspectj.ajdt.internal.core.builder.AjBuildManager.batchBuild(AjBuildManager.java:185)
at org.aspectj.ajdt.ajc.AjdtCommand.doCommand(AjdtCommand.java:112)
at org.aspectj.ajdt.ajc.AjdtCommand.runCommand(AjdtCommand.java:60)
at org.aspectj.tools.ajc.Main.run(Main.java:371)
at com.jcabi.maven.plugin.AjcMojo.execute_aroundBody0(AjcMojo.java:174)
at com.jcabi.maven.plugin.AjcMojo$AjcClosure1.run(AjcMojo.java:1)
at org.aspectj.runtime.reflect.JoinPointImpl.proceed(JoinPointImpl.java:149)
at com.jcabi.aspects.aj.MethodLogger.wrap(MethodLogger.java:204)
at com.jcabi.aspects.aj.MethodLogger.ajc$inlineAccessMethod$com_jcabi_aspects_aj_MethodLogger$com_jcabi_aspects_aj_MethodLogger$wrap(MethodLogger.java:1)
at com.jcabi.aspects.aj.MethodLogger.wrapMethod(MethodLogger.java:160)
at com.jcabi.maven.plugin.AjcMojo.execute_aroundBody2(AjcMojo.java:168)
at com.jcabi.maven.plugin.AjcMojo$AjcClosure3.run(AjcMojo.java:1)
at org.aspectj.runtime.reflect.JoinPointImpl.proceed(JoinPointImpl.java:149)
at com.jcabi.aspects.aj.MethodLogger.wrapClass(MethodLogger.java:130)
at com.jcabi.maven.plugin.AjcMojo.execute(AjcMojo.java:168)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.MojoExecutor.executeForkedExecutions(MojoExecutor.java:365)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeForkedExecutions(DefaultLifecycleExecutor.java:175)
at org.apache.maven.reporting.exec.DefaultMavenReportExecutor.buildReportPlugin(DefaultMavenReportExecutor.java:273)
at org.apache.maven.reporting.exec.DefaultMavenReportExecutor.buildMavenReports(DefaultMavenReportExecutor.java:154)
at org.apache.maven.plugins.site.AbstractSiteRenderingMojo.getReports(AbstractSiteRenderingMojo.java:235)
at org.apache.maven.plugins.site.SiteMojo.execute(SiteMojo.java:121)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
[ERROR] ABORT
Oct 08, 2013 8:34:05 AM org.aspectj.weaver.tools.Jdk14Trace info
INFO: Dumping to /Users/yegor/code/jcabi/jcabi-jdbc/./ajcore.20131008.083405.693.txt
[ERROR] unexpected exception
[INFO] ajc result: 0 file(s) processed, 0 pointcut(s) woven, 2 error(s), 2 warning(s)
In our current pom we have the following artifact defined:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>3.0.1</version>
</dependency>
This does not exist. The servlet-api
artifact was renamed to javax.servlet-api
for version 3.0.1 and above. It should be:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
</dependency>
See http://mvnrepository.com/artifact/javax.servlet/javax.servlet-api/3.0.1
let's add a new profile for site deployment to github
Lets add it into qulice profile, and remove from qulice itself
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.