You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "ASF subversion and git services (Jira)" <ji...@apache.org> on 2020/10/02 11:41:00 UTC

[jira] [Commented] (WICKET-6837) Jupiter engine transitively included in war file

    [ https://issues.apache.org/jira/browse/WICKET-6837?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17206121#comment-17206121 ] 

ASF subversion and git services commented on WICKET-6837:
---------------------------------------------------------

Commit a5568b991f1109f0d3c90590aa17340cad8eb633 in wicket's branch refs/heads/master from Martin Tzvetanov Grigorov
[ https://gitbox.apache.org/repos/asf?p=wicket.git;h=a5568b9 ]

WICKET-6837 Jupiter engine transitively included in war file

Explicitly state that junit is an optional dependency.
The application should add a dependency explicitly if it needs to use WicketTester


> Jupiter engine transitively included in war file
> ------------------------------------------------
>
>                 Key: WICKET-6837
>                 URL: https://issues.apache.org/jira/browse/WICKET-6837
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket-core
>    Affects Versions: 9.0.0
>            Reporter: Gert-Jan Schouten
>            Priority: Minor
>
> If I run mvn dependency:tree on this basic war pom:
> {noformat}
> <?xml version="1.0"?>
> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
> 	<modelVersion>4.0.0</modelVersion>
> 	<groupId>test</groupId>
> 	<artifactId>test</artifactId>
> 	<packaging>war</packaging>
> 	<version>1.0</version>
> 	<dependencies>
> 			<dependency>
> 				<groupId>org.apache.wicket</groupId>
> 				<artifactId>wicket-core</artifactId>
> 				<version>9.0.0</version>
> 				<type>jar</type>
> 				<scope>compile</scope>
> 			</dependency>
> 	</dependencies>
> </project>{noformat}
> then the output is this:
>  
>  
> {noformat}
> [INFO] test:test:war:1.0
> [INFO] \- org.apache.wicket:wicket-core:jar:9.0.0:compile
> [INFO]    +- com.github.openjson:openjson:jar:1.0.12:compile
> [INFO]    +- org.apache.wicket:wicket-request:jar:9.0.0:compile
> [INFO]    +- org.apache.wicket:wicket-util:jar:9.0.0:compile
> [INFO]    |  +- commons-fileupload:commons-fileupload:jar:1.4:compile
> [INFO]    |  +- commons-io:commons-io:jar:2.6:compile
> [INFO]    |  +- org.apache.commons:commons-collections4:jar:4.4:compile
> [INFO]    |  \- org.junit.jupiter:junit-jupiter-engine:jar:5.6.2:compile
> [INFO]    |     +- org.apiguardian:apiguardian-api:jar:1.1.0:compile
> [INFO]    |     +- org.junit.platform:junit-platform-engine:jar:1.6.2:compile
> [INFO]    |     |  +- org.opentest4j:opentest4j:jar:1.2.0:compile
> [INFO]    |     |  \- org.junit.platform:junit-platform-commons:jar:1.6.2:compile
> [INFO]    |     \- org.junit.jupiter:junit-jupiter-api:jar:5.6.2:compile
> [INFO]    +- org.danekja:jdk-serializable-functional:jar:1.9.0:compile
> [INFO]    \- org.slf4j:slf4j-api:jar:1.7.25:compile{noformat}
> The org.junit.jupiter:junit-jupiter-engine:jar should not have compile scope, because it means that it will be included in war files that use wicket-core.
>  
> I believe this is caused by the fact that wicket-util overrides the scope of org.junit.jupiter:junit-jupiter-engine:jar and sets it to "compile". As far as I understand, overriding the <scope> stops a dependency from inheriting the <optional> element, after which the <optional> element will default to "false".
> This can be solved by adding the <optional> element to org.junit.jupiter:junit-jupiter-engine:jar and setting it to "true" in wicket-util.
> The wicket-examples war is not affected by this. I think this is because the wicket-examples war file _itself_ inherits from wicket-parent, in which case I have no idea how it affects the scope/optional resolution :) Anyway, this is not representative of a typical war file, which would not inherit from wicket-parent.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)