[JBoss JIRA] (SHRINKRES-140) Update Aether implementation to org.eclipse.aether one
by Andrew Rubinger (JIRA)
[ https://issues.jboss.org/browse/SHRINKRES-140?page=com.atlassian.jira.plu... ]
Andrew Rubinger commented on SHRINKRES-140:
-------------------------------------------
I don't have cycles at the moment to determine the cause of the remaining failures. [~goldmann], The branch we have for the upgrade builds in that it compiles, but fails the testsuite. Building w/ "-DskipTests" true will get you to BUILD SUCCESS, but I'm not sure what benefit that is if things aren't all working?
> Update Aether implementation to org.eclipse.aether one
> ------------------------------------------------------
>
> Key: SHRINKRES-140
> URL: https://issues.jboss.org/browse/SHRINKRES-140
> Project: ShrinkWrap Resolvers
> Issue Type: Component Upgrade
> Components: impl-maven
> Affects Versions: 2.0.0-beta-5
> Reporter: Karel Piwko
> Assignee: Michal Matloka
>
> Aether is now a part of org.eclipse foundation. We should update to newer version when they release first stable version.
> Update should not affect user at all, it should comprise of replacing imports with new ones.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
10 years, 6 months
[JBoss JIRA] (SHRINKRES-150) Wrong built WebArchive using Shrinkwrap Classpath resolution
by Gunther Klein (JIRA)
[ https://issues.jboss.org/browse/SHRINKRES-150?page=com.atlassian.jira.plu... ]
Gunther Klein updated SHRINKRES-150:
------------------------------------
Description:
Hi,
I have defined a simple war project and setup an arquillian test using shrinkwrap 2.0.0, that - as a test - just resolves the web archive via classpath resolution:
{code:borderStyle=solid}
@RunWith(Arquillian.class)
public class ShrinkwrapTestIT {
@Deployment
public static Archive<?> createDeployment() {
WebArchive war = Maven.resolver()
.resolve("shrinkwrap.test:shrinkwrap.test:war:0.0.1-SNAPSHOT").withClassPathResolution(true)
.withoutTransitivity().asSingle(WebArchive.class);
System.out.println(war.toString(true));
return war;
}
@Test
public void test() {
//do nothing
}
}
{code}
The output shows, that the archive is incomplete (resource files are missing) and not even war conform:
some_text_file.txt
com/
com/test/
com/test/Test.class
If i change the code to use .withClassPathResolution(false), the output is:
/some_text_file.txt
/index.jsp
/com/
/com/test/
/com/test/Test.class
/WEB-INF/
/WEB-INF/web.xml
/WEB-INF/sun-web.xml
/META-INF/
/META-INF/MANIFEST.MF
Now the resources are included, but the class(es) are packaged at the top level and not under /WEB-INF/classes, so it still doesnt respresent a valid war. My pom looks like:
{code:xml}
<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>shrinkwrap.test</groupId>
<artifactId>shrinkwrap.test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<properties>
<project.build.sourceEncoding>ISO8859-1</project.build.sourceEncoding>
<version.shrinkwrap.resolvers>2.0.0</version.shrinkwrap.resolvers>
</properties>
<dependencies>
<!-- test dependencies -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.junit</groupId>
<artifactId>arquillian-junit-container</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.container</groupId>
<artifactId>arquillian-glassfish-remote-3.1</artifactId>
<version>1.0.0.CR4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.shrinkwrap.resolver</groupId>
<artifactId>shrinkwrap-resolver-depchain</artifactId>
<version>${version.shrinkwrap.resolvers}</version>
<scope>test</scope>
<type>pom</type>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<!-- Override dependency resolver with latest version. This must go *BEFORE*
the Arquillian BOM. -->
<dependency>
<groupId>org.jboss.shrinkwrap.resolver</groupId>
<artifactId>shrinkwrap-resolver-bom</artifactId>
<version>${version.shrinkwrap.resolvers}</version>
<scope>import</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.jboss.arquillian</groupId>
<artifactId>arquillian-bom</artifactId>
<version>1.1.1.Final</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.16</version>
<configuration>
<skipTests>${skipITs}</skipTests>
</configuration>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
{code}
Why is shrinkwrap giving me corrupt archives here in both cases? For the case with classpath resolution i would expect shrinkwrap to give me the war, that was built by maven in the package phase? Without classpath resolution i would expect shrinkwrap to resolve the war from maven respository (local or remote). Or is my understanding of shrinkwrap (classpath) resolution wrong here?
was:
I have defined a simple war project and setup an arquillian test using shrinkwrap 2.0.0, that - as a test - just resolves the web archive via classpath resolution:
{code:borderStyle=solid}
@RunWith(Arquillian.class)
public class ShrinkwrapTestIT {
@Deployment
public static Archive<?> createDeployment() {
WebArchive war = Maven.resolver()
.resolve("shrinkwrap.test:shrinkwrap.test:war:0.0.1-SNAPSHOT").withClassPathResolution(true)
.withoutTransitivity().asSingle(WebArchive.class);
System.out.println(war.toString(true));
return war;
}
@Test
public void test() {
//do nothing
}
}
{code}
The output shows, that the archive is incomplete (resource files are missing) and not even war conform:
some_text_file.txt
com/
com/test/
com/test/Test.class
If i change the code to use .withClassPathResolution(false), the output is:
/some_text_file.txt
/index.jsp
/com/
/com/test/
/com/test/Test.class
/WEB-INF/
/WEB-INF/web.xml
/WEB-INF/sun-web.xml
/META-INF/
/META-INF/MANIFEST.MF
Now the resources are included, but the class(es) are packaged at the top level and not under /WEB-INF/classes, so it still doesnt respresent a valid war. My pom looks like:
<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>shrinkwrap.test</groupId>
<artifactId>shrinkwrap.test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<properties>
<project.build.sourceEncoding>ISO8859-1</project.build.sourceEncoding>
<version.shrinkwrap.resolvers>2.0.0</version.shrinkwrap.resolvers>
</properties>
<dependencies>
<!-- test dependencies -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.junit</groupId>
<artifactId>arquillian-junit-container</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.container</groupId>
<artifactId>arquillian-glassfish-remote-3.1</artifactId>
<version>1.0.0.CR4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.shrinkwrap.resolver</groupId>
<artifactId>shrinkwrap-resolver-depchain</artifactId>
<version>${version.shrinkwrap.resolvers}</version>
<scope>test</scope>
<type>pom</type>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<!-- Override dependency resolver with latest version. This must go *BEFORE*
the Arquillian BOM. -->
<dependency>
<groupId>org.jboss.shrinkwrap.resolver</groupId>
<artifactId>shrinkwrap-resolver-bom</artifactId>
<version>${version.shrinkwrap.resolvers}</version>
<scope>import</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.jboss.arquillian</groupId>
<artifactId>arquillian-bom</artifactId>
<version>1.1.1.Final</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.16</version>
<configuration>
<skipTests>${skipITs}</skipTests>
</configuration>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Why is shrinkwrap giving me corrupt archives here in both cases? For the case with classpath resolution i would expect shrinkwrap to give me the war, that was built by maven in the package phase? Without classpath resolution i would expect shrinkwrap to resolve the war from maven respository (local or remote). Or is my understanding of shrinkwrap (classpath) resolution wrong here?
> Wrong built WebArchive using Shrinkwrap Classpath resolution
> ------------------------------------------------------------
>
> Key: SHRINKRES-150
> URL: https://issues.jboss.org/browse/SHRINKRES-150
> Project: ShrinkWrap Resolvers
> Issue Type: Bug
> Affects Versions: 2.0.0
> Environment: win 7 (64 bit), glassfish 3.1.2
> Reporter: Gunther Klein
> Assignee: Andrew Rubinger
>
> Hi,
> I have defined a simple war project and setup an arquillian test using shrinkwrap 2.0.0, that - as a test - just resolves the web archive via classpath resolution:
> {code:borderStyle=solid}
> @RunWith(Arquillian.class)
> public class ShrinkwrapTestIT {
> @Deployment
> public static Archive<?> createDeployment() {
> WebArchive war = Maven.resolver()
> .resolve("shrinkwrap.test:shrinkwrap.test:war:0.0.1-SNAPSHOT").withClassPathResolution(true)
> .withoutTransitivity().asSingle(WebArchive.class);
> System.out.println(war.toString(true));
> return war;
> }
> @Test
> public void test() {
> //do nothing
> }
> }
> {code}
> The output shows, that the archive is incomplete (resource files are missing) and not even war conform:
> some_text_file.txt
> com/
> com/test/
> com/test/Test.class
> If i change the code to use .withClassPathResolution(false), the output is:
> /some_text_file.txt
> /index.jsp
> /com/
> /com/test/
> /com/test/Test.class
> /WEB-INF/
> /WEB-INF/web.xml
> /WEB-INF/sun-web.xml
> /META-INF/
> /META-INF/MANIFEST.MF
>
> Now the resources are included, but the class(es) are packaged at the top level and not under /WEB-INF/classes, so it still doesnt respresent a valid war. My pom looks like:
> {code:xml}
> <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>shrinkwrap.test</groupId>
> <artifactId>shrinkwrap.test</artifactId>
> <version>0.0.1-SNAPSHOT</version>
> <packaging>war</packaging>
> <properties>
> <project.build.sourceEncoding>ISO8859-1</project.build.sourceEncoding>
> <version.shrinkwrap.resolvers>2.0.0</version.shrinkwrap.resolvers>
> </properties>
> <dependencies>
> <!-- test dependencies -->
> <dependency>
> <groupId>junit</groupId>
> <artifactId>junit</artifactId>
> <version>4.11</version>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian.junit</groupId>
> <artifactId>arquillian-junit-container</artifactId>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian.container</groupId>
> <artifactId>arquillian-glassfish-remote-3.1</artifactId>
> <version>1.0.0.CR4</version>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>org.jboss.shrinkwrap.resolver</groupId>
> <artifactId>shrinkwrap-resolver-depchain</artifactId>
> <version>${version.shrinkwrap.resolvers}</version>
> <scope>test</scope>
> <type>pom</type>
> </dependency>
> </dependencies>
> <dependencyManagement>
> <dependencies>
> <!-- Override dependency resolver with latest version. This must go *BEFORE*
> the Arquillian BOM. -->
> <dependency>
> <groupId>org.jboss.shrinkwrap.resolver</groupId>
> <artifactId>shrinkwrap-resolver-bom</artifactId>
> <version>${version.shrinkwrap.resolvers}</version>
> <scope>import</scope>
> <type>pom</type>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian</groupId>
> <artifactId>arquillian-bom</artifactId>
> <version>1.1.1.Final</version>
> <scope>import</scope>
> <type>pom</type>
> </dependency>
> </dependencies>
> </dependencyManagement>
> <build>
> <plugins>
> <plugin>
> <groupId>org.apache.maven.plugins</groupId>
> <artifactId>maven-failsafe-plugin</artifactId>
> <version>2.16</version>
> <configuration>
> <skipTests>${skipITs}</skipTests>
> </configuration>
> <executions>
> <execution>
> <goals>
> <goal>integration-test</goal>
> <goal>verify</goal>
> </goals>
> </execution>
> </executions>
> </plugin>
> </plugins>
> </build>
> </project>
> {code}
> Why is shrinkwrap giving me corrupt archives here in both cases? For the case with classpath resolution i would expect shrinkwrap to give me the war, that was built by maven in the package phase? Without classpath resolution i would expect shrinkwrap to resolve the war from maven respository (local or remote). Or is my understanding of shrinkwrap (classpath) resolution wrong here?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
10 years, 6 months
[JBoss JIRA] (SHRINKRES-150) Wrong built WebArchive using Shrinkwrap Classpath resolution
by Gunther Klein (JIRA)
[ https://issues.jboss.org/browse/SHRINKRES-150?page=com.atlassian.jira.plu... ]
Gunther Klein updated SHRINKRES-150:
------------------------------------
Description:
I have defined a simple war project and setup an arquillian test using shrinkwrap 2.0.0, that - as a test - just resolves the web archive via classpath resolution:
{code:borderStyle=solid}
@RunWith(Arquillian.class)
public class ShrinkwrapTestIT {
@Deployment
public static Archive<?> createDeployment() {
WebArchive war = Maven.resolver()
.resolve("shrinkwrap.test:shrinkwrap.test:war:0.0.1-SNAPSHOT").withClassPathResolution(true)
.withoutTransitivity().asSingle(WebArchive.class);
System.out.println(war.toString(true));
return war;
}
@Test
public void test() {
//do nothing
}
}
{code}
The output shows, that the archive is incomplete (resource files are missing) and not even war conform:
some_text_file.txt
com/
com/test/
com/test/Test.class
If i change the code to use .withClassPathResolution(false), the output is:
/some_text_file.txt
/index.jsp
/com/
/com/test/
/com/test/Test.class
/WEB-INF/
/WEB-INF/web.xml
/WEB-INF/sun-web.xml
/META-INF/
/META-INF/MANIFEST.MF
Now the resources are included, but the class(es) are packaged at the top level and not under /WEB-INF/classes, so it still doesnt respresent a valid war. My pom looks like:
<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>shrinkwrap.test</groupId>
<artifactId>shrinkwrap.test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<properties>
<project.build.sourceEncoding>ISO8859-1</project.build.sourceEncoding>
<version.shrinkwrap.resolvers>2.0.0</version.shrinkwrap.resolvers>
</properties>
<dependencies>
<!-- test dependencies -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.junit</groupId>
<artifactId>arquillian-junit-container</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.container</groupId>
<artifactId>arquillian-glassfish-remote-3.1</artifactId>
<version>1.0.0.CR4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.shrinkwrap.resolver</groupId>
<artifactId>shrinkwrap-resolver-depchain</artifactId>
<version>${version.shrinkwrap.resolvers}</version>
<scope>test</scope>
<type>pom</type>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<!-- Override dependency resolver with latest version. This must go *BEFORE*
the Arquillian BOM. -->
<dependency>
<groupId>org.jboss.shrinkwrap.resolver</groupId>
<artifactId>shrinkwrap-resolver-bom</artifactId>
<version>${version.shrinkwrap.resolvers}</version>
<scope>import</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.jboss.arquillian</groupId>
<artifactId>arquillian-bom</artifactId>
<version>1.1.1.Final</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.16</version>
<configuration>
<skipTests>${skipITs}</skipTests>
</configuration>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Why is shrinkwrap giving me corrupt archives here in both cases? For the case with classpath resolution i would expect shrinkwrap to give me the war, that was built by maven in the package phase? Without classpath resolution i would expect shrinkwrap to resolve the war from maven respository (local or remote). Or is my understanding of shrinkwrap (classpath) resolution wrong here?
was:
I have defined a simple war project and setup an arquillian test using shrinkwrap 2.0.0, that - as a test - just resolves the web archive via classpath resolution:
{code:title=ShrinkwrapTestIT.java|borderStyle=solid}
@RunWith(Arquillian.class)
public class ShrinkwrapTestIT {
@Deployment
public static Archive<?> createDeployment() {
WebArchive war = Maven.resolver()
.resolve("shrinkwrap.test:shrinkwrap.test:war:0.0.1-SNAPSHOT").withClassPathResolution(true)
.withoutTransitivity().asSingle(WebArchive.class);
System.out.println(war.toString(true));
return war;
}
@Test
public void test() {
//do nothing
}
}
{code}
The output shows, that the archive is incomplete (resource files are missing) and not even war conform:
some_text_file.txt
com/
com/test/
com/test/Test.class
If i change the code to use .withClassPathResolution(false), the output is:
/some_text_file.txt
/index.jsp
/com/
/com/test/
/com/test/Test.class
/WEB-INF/
/WEB-INF/web.xml
/WEB-INF/sun-web.xml
/META-INF/
/META-INF/MANIFEST.MF
Now the resources are included, but the class(es) are packaged at the top level and not under /WEB-INF/classes, so it still doesnt respresent a valid war. My pom looks like:
<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>shrinkwrap.test</groupId>
<artifactId>shrinkwrap.test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<properties>
<project.build.sourceEncoding>ISO8859-1</project.build.sourceEncoding>
<version.shrinkwrap.resolvers>2.0.0</version.shrinkwrap.resolvers>
</properties>
<dependencies>
<!-- test dependencies -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.junit</groupId>
<artifactId>arquillian-junit-container</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.container</groupId>
<artifactId>arquillian-glassfish-remote-3.1</artifactId>
<version>1.0.0.CR4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.shrinkwrap.resolver</groupId>
<artifactId>shrinkwrap-resolver-depchain</artifactId>
<version>${version.shrinkwrap.resolvers}</version>
<scope>test</scope>
<type>pom</type>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<!-- Override dependency resolver with latest version. This must go *BEFORE*
the Arquillian BOM. -->
<dependency>
<groupId>org.jboss.shrinkwrap.resolver</groupId>
<artifactId>shrinkwrap-resolver-bom</artifactId>
<version>${version.shrinkwrap.resolvers}</version>
<scope>import</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.jboss.arquillian</groupId>
<artifactId>arquillian-bom</artifactId>
<version>1.1.1.Final</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.16</version>
<configuration>
<skipTests>${skipITs}</skipTests>
</configuration>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Why is shrinkwrap giving me corrupt archives here in both cases? For the case with classpath resolution i would expect shrinkwrap to give me the war, that was built by maven in the package phase? Without classpath resolution i would expect shrinkwrap to resolve the war from maven respository (local or remote). Or is my understanding of shrinkwrap (classpath) resolution wrong here?
> Wrong built WebArchive using Shrinkwrap Classpath resolution
> ------------------------------------------------------------
>
> Key: SHRINKRES-150
> URL: https://issues.jboss.org/browse/SHRINKRES-150
> Project: ShrinkWrap Resolvers
> Issue Type: Bug
> Affects Versions: 2.0.0
> Environment: win 7 (64 bit), glassfish 3.1.2
> Reporter: Gunther Klein
> Assignee: Andrew Rubinger
>
> I have defined a simple war project and setup an arquillian test using shrinkwrap 2.0.0, that - as a test - just resolves the web archive via classpath resolution:
> {code:borderStyle=solid}
> @RunWith(Arquillian.class)
> public class ShrinkwrapTestIT {
> @Deployment
> public static Archive<?> createDeployment() {
> WebArchive war = Maven.resolver()
> .resolve("shrinkwrap.test:shrinkwrap.test:war:0.0.1-SNAPSHOT").withClassPathResolution(true)
> .withoutTransitivity().asSingle(WebArchive.class);
> System.out.println(war.toString(true));
> return war;
> }
> @Test
> public void test() {
> //do nothing
> }
> }
> {code}
> The output shows, that the archive is incomplete (resource files are missing) and not even war conform:
> some_text_file.txt
> com/
> com/test/
> com/test/Test.class
> If i change the code to use .withClassPathResolution(false), the output is:
> /some_text_file.txt
> /index.jsp
> /com/
> /com/test/
> /com/test/Test.class
> /WEB-INF/
> /WEB-INF/web.xml
> /WEB-INF/sun-web.xml
> /META-INF/
> /META-INF/MANIFEST.MF
>
> Now the resources are included, but the class(es) are packaged at the top level and not under /WEB-INF/classes, so it still doesnt respresent a valid war. My pom looks like:
> <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>shrinkwrap.test</groupId>
> <artifactId>shrinkwrap.test</artifactId>
> <version>0.0.1-SNAPSHOT</version>
> <packaging>war</packaging>
> <properties>
> <project.build.sourceEncoding>ISO8859-1</project.build.sourceEncoding>
> <version.shrinkwrap.resolvers>2.0.0</version.shrinkwrap.resolvers>
> </properties>
> <dependencies>
> <!-- test dependencies -->
> <dependency>
> <groupId>junit</groupId>
> <artifactId>junit</artifactId>
> <version>4.11</version>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian.junit</groupId>
> <artifactId>arquillian-junit-container</artifactId>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian.container</groupId>
> <artifactId>arquillian-glassfish-remote-3.1</artifactId>
> <version>1.0.0.CR4</version>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>org.jboss.shrinkwrap.resolver</groupId>
> <artifactId>shrinkwrap-resolver-depchain</artifactId>
> <version>${version.shrinkwrap.resolvers}</version>
> <scope>test</scope>
> <type>pom</type>
> </dependency>
> </dependencies>
> <dependencyManagement>
> <dependencies>
> <!-- Override dependency resolver with latest version. This must go *BEFORE*
> the Arquillian BOM. -->
> <dependency>
> <groupId>org.jboss.shrinkwrap.resolver</groupId>
> <artifactId>shrinkwrap-resolver-bom</artifactId>
> <version>${version.shrinkwrap.resolvers}</version>
> <scope>import</scope>
> <type>pom</type>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian</groupId>
> <artifactId>arquillian-bom</artifactId>
> <version>1.1.1.Final</version>
> <scope>import</scope>
> <type>pom</type>
> </dependency>
> </dependencies>
> </dependencyManagement>
> <build>
> <plugins>
> <plugin>
> <groupId>org.apache.maven.plugins</groupId>
> <artifactId>maven-failsafe-plugin</artifactId>
> <version>2.16</version>
> <configuration>
> <skipTests>${skipITs}</skipTests>
> </configuration>
> <executions>
> <execution>
> <goals>
> <goal>integration-test</goal>
> <goal>verify</goal>
> </goals>
> </execution>
> </executions>
> </plugin>
> </plugins>
> </build>
> </project>
> Why is shrinkwrap giving me corrupt archives here in both cases? For the case with classpath resolution i would expect shrinkwrap to give me the war, that was built by maven in the package phase? Without classpath resolution i would expect shrinkwrap to resolve the war from maven respository (local or remote). Or is my understanding of shrinkwrap (classpath) resolution wrong here?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
10 years, 6 months
[JBoss JIRA] (SHRINKRES-150) Wrong built WebArchive using Shrinkwrap Classpath resolution
by Gunther Klein (JIRA)
[ https://issues.jboss.org/browse/SHRINKRES-150?page=com.atlassian.jira.plu... ]
Gunther Klein updated SHRINKRES-150:
------------------------------------
Description:
I have defined a simple war project and setup an arquillian test using shrinkwrap 2.0.0, that - as a test - just resolves the web archive via classpath resolution:
{code:title=ShrinkwrapTestIT.java|borderStyle=solid}
@RunWith(Arquillian.class)
public class ShrinkwrapTestIT {
@Deployment
public static Archive<?> createDeployment() {
WebArchive war = Maven.resolver()
.resolve("shrinkwrap.test:shrinkwrap.test:war:0.0.1-SNAPSHOT").withClassPathResolution(true)
.withoutTransitivity().asSingle(WebArchive.class);
System.out.println(war.toString(true));
return war;
}
@Test
public void test() {
//do nothing
}
}
{code}
The output shows, that the archive is incomplete (resource files are missing) and not even war conform:
some_text_file.txt
com/
com/test/
com/test/Test.class
If i change the code to use .withClassPathResolution(false), the output is:
/some_text_file.txt
/index.jsp
/com/
/com/test/
/com/test/Test.class
/WEB-INF/
/WEB-INF/web.xml
/WEB-INF/sun-web.xml
/META-INF/
/META-INF/MANIFEST.MF
Now the resources are included, but the class(es) are packaged at the top level and not under /WEB-INF/classes, so it still doesnt respresent a valid war. My pom looks like:
<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>shrinkwrap.test</groupId>
<artifactId>shrinkwrap.test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<properties>
<project.build.sourceEncoding>ISO8859-1</project.build.sourceEncoding>
<version.shrinkwrap.resolvers>2.0.0</version.shrinkwrap.resolvers>
</properties>
<dependencies>
<!-- test dependencies -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.junit</groupId>
<artifactId>arquillian-junit-container</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.container</groupId>
<artifactId>arquillian-glassfish-remote-3.1</artifactId>
<version>1.0.0.CR4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.shrinkwrap.resolver</groupId>
<artifactId>shrinkwrap-resolver-depchain</artifactId>
<version>${version.shrinkwrap.resolvers}</version>
<scope>test</scope>
<type>pom</type>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<!-- Override dependency resolver with latest version. This must go *BEFORE*
the Arquillian BOM. -->
<dependency>
<groupId>org.jboss.shrinkwrap.resolver</groupId>
<artifactId>shrinkwrap-resolver-bom</artifactId>
<version>${version.shrinkwrap.resolvers}</version>
<scope>import</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.jboss.arquillian</groupId>
<artifactId>arquillian-bom</artifactId>
<version>1.1.1.Final</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.16</version>
<configuration>
<skipTests>${skipITs}</skipTests>
</configuration>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Why is shrinkwrap giving me corrupt archives here in both cases? For the case with classpath resolution i would expect shrinkwrap to give me the war, that was built by maven in the package phase? Without classpath resolution i would expect shrinkwrap to resolve the war from maven respository (local or remote). Or is my understanding of shrinkwrap (classpath) resolution wrong here?
was:
I have defined a simple war project and setup an arquillian test using shrinkwrap 2.0.0, that - as a test - just resolves the web archive via classpath resolution:
@RunWith(Arquillian.class)
public class ShrinkwrapTestIT {
@Deployment
public static Archive<?> createDeployment() {
WebArchive war = Maven.resolver()
.resolve("shrinkwrap.test:shrinkwrap.test:war:0.0.1-SNAPSHOT").withClassPathResolution(true)
.withoutTransitivity().asSingle(WebArchive.class);
System.out.println(war.toString(true));
return war;
}
@Test
public void test() {
//do nothing
}
}
The output shows, that the archive is incomplete (resource files are missing) and not even war conform:
some_text_file.txt
com/
com/test/
com/test/Test.class
If i change the code to use .withClassPathResolution(false), the output is:
/some_text_file.txt
/index.jsp
/com/
/com/test/
/com/test/Test.class
/WEB-INF/
/WEB-INF/web.xml
/WEB-INF/sun-web.xml
/META-INF/
/META-INF/MANIFEST.MF
Now the resources are included, but the class(es) are packaged at the top level and not under /WEB-INF/classes, so it still doesnt respresent a valid war. My pom looks like:
<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>shrinkwrap.test</groupId>
<artifactId>shrinkwrap.test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<properties>
<project.build.sourceEncoding>ISO8859-1</project.build.sourceEncoding>
<version.shrinkwrap.resolvers>2.0.0</version.shrinkwrap.resolvers>
</properties>
<dependencies>
<!-- test dependencies -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.junit</groupId>
<artifactId>arquillian-junit-container</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.container</groupId>
<artifactId>arquillian-glassfish-remote-3.1</artifactId>
<version>1.0.0.CR4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.shrinkwrap.resolver</groupId>
<artifactId>shrinkwrap-resolver-depchain</artifactId>
<version>${version.shrinkwrap.resolvers}</version>
<scope>test</scope>
<type>pom</type>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<!-- Override dependency resolver with latest version. This must go *BEFORE*
the Arquillian BOM. -->
<dependency>
<groupId>org.jboss.shrinkwrap.resolver</groupId>
<artifactId>shrinkwrap-resolver-bom</artifactId>
<version>${version.shrinkwrap.resolvers}</version>
<scope>import</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.jboss.arquillian</groupId>
<artifactId>arquillian-bom</artifactId>
<version>1.1.1.Final</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.16</version>
<configuration>
<skipTests>${skipITs}</skipTests>
</configuration>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Why is shrinkwrap giving me corrupt archives here in both cases? For the case with classpath resolution i would expect shrinkwrap to give me the war, that was built by maven in the package phase? Without classpath resolution i would expect shrinkwrap to resolve the war from maven respository (local or remote). Or is my understanding of shrinkwrap (classpath) resolution wrong here?
> Wrong built WebArchive using Shrinkwrap Classpath resolution
> ------------------------------------------------------------
>
> Key: SHRINKRES-150
> URL: https://issues.jboss.org/browse/SHRINKRES-150
> Project: ShrinkWrap Resolvers
> Issue Type: Bug
> Affects Versions: 2.0.0
> Environment: win 7 (64 bit), glassfish 3.1.2
> Reporter: Gunther Klein
> Assignee: Andrew Rubinger
>
> I have defined a simple war project and setup an arquillian test using shrinkwrap 2.0.0, that - as a test - just resolves the web archive via classpath resolution:
> {code:title=ShrinkwrapTestIT.java|borderStyle=solid}
> @RunWith(Arquillian.class)
> public class ShrinkwrapTestIT {
> @Deployment
> public static Archive<?> createDeployment() {
> WebArchive war = Maven.resolver()
> .resolve("shrinkwrap.test:shrinkwrap.test:war:0.0.1-SNAPSHOT").withClassPathResolution(true)
> .withoutTransitivity().asSingle(WebArchive.class);
> System.out.println(war.toString(true));
> return war;
> }
> @Test
> public void test() {
> //do nothing
> }
> }
> {code}
> The output shows, that the archive is incomplete (resource files are missing) and not even war conform:
> some_text_file.txt
> com/
> com/test/
> com/test/Test.class
> If i change the code to use .withClassPathResolution(false), the output is:
> /some_text_file.txt
> /index.jsp
> /com/
> /com/test/
> /com/test/Test.class
> /WEB-INF/
> /WEB-INF/web.xml
> /WEB-INF/sun-web.xml
> /META-INF/
> /META-INF/MANIFEST.MF
>
> Now the resources are included, but the class(es) are packaged at the top level and not under /WEB-INF/classes, so it still doesnt respresent a valid war. My pom looks like:
> <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>shrinkwrap.test</groupId>
> <artifactId>shrinkwrap.test</artifactId>
> <version>0.0.1-SNAPSHOT</version>
> <packaging>war</packaging>
> <properties>
> <project.build.sourceEncoding>ISO8859-1</project.build.sourceEncoding>
> <version.shrinkwrap.resolvers>2.0.0</version.shrinkwrap.resolvers>
> </properties>
> <dependencies>
> <!-- test dependencies -->
> <dependency>
> <groupId>junit</groupId>
> <artifactId>junit</artifactId>
> <version>4.11</version>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian.junit</groupId>
> <artifactId>arquillian-junit-container</artifactId>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian.container</groupId>
> <artifactId>arquillian-glassfish-remote-3.1</artifactId>
> <version>1.0.0.CR4</version>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>org.jboss.shrinkwrap.resolver</groupId>
> <artifactId>shrinkwrap-resolver-depchain</artifactId>
> <version>${version.shrinkwrap.resolvers}</version>
> <scope>test</scope>
> <type>pom</type>
> </dependency>
> </dependencies>
> <dependencyManagement>
> <dependencies>
> <!-- Override dependency resolver with latest version. This must go *BEFORE*
> the Arquillian BOM. -->
> <dependency>
> <groupId>org.jboss.shrinkwrap.resolver</groupId>
> <artifactId>shrinkwrap-resolver-bom</artifactId>
> <version>${version.shrinkwrap.resolvers}</version>
> <scope>import</scope>
> <type>pom</type>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian</groupId>
> <artifactId>arquillian-bom</artifactId>
> <version>1.1.1.Final</version>
> <scope>import</scope>
> <type>pom</type>
> </dependency>
> </dependencies>
> </dependencyManagement>
> <build>
> <plugins>
> <plugin>
> <groupId>org.apache.maven.plugins</groupId>
> <artifactId>maven-failsafe-plugin</artifactId>
> <version>2.16</version>
> <configuration>
> <skipTests>${skipITs}</skipTests>
> </configuration>
> <executions>
> <execution>
> <goals>
> <goal>integration-test</goal>
> <goal>verify</goal>
> </goals>
> </execution>
> </executions>
> </plugin>
> </plugins>
> </build>
> </project>
> Why is shrinkwrap giving me corrupt archives here in both cases? For the case with classpath resolution i would expect shrinkwrap to give me the war, that was built by maven in the package phase? Without classpath resolution i would expect shrinkwrap to resolve the war from maven respository (local or remote). Or is my understanding of shrinkwrap (classpath) resolution wrong here?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
10 years, 6 months
[JBoss JIRA] (SHRINKRES-140) Update Aether implementation to org.eclipse.aether one
by Marek Goldmann (JIRA)
[ https://issues.jboss.org/browse/SHRINKRES-140?page=com.atlassian.jira.plu... ]
Marek Goldmann commented on SHRINKRES-140:
------------------------------------------
I would be happy with a patch that would let me build it at least, we can fix it a bit later and make sure everything works as expected. The priority here is to have it in a buildable state, later I can target a release/tag which has this issue fully fixed.
> Update Aether implementation to org.eclipse.aether one
> ------------------------------------------------------
>
> Key: SHRINKRES-140
> URL: https://issues.jboss.org/browse/SHRINKRES-140
> Project: ShrinkWrap Resolvers
> Issue Type: Component Upgrade
> Components: impl-maven
> Affects Versions: 2.0.0-beta-5
> Reporter: Karel Piwko
> Assignee: Michal Matloka
>
> Aether is now a part of org.eclipse foundation. We should update to newer version when they release first stable version.
> Update should not affect user at all, it should comprise of replacing imports with new ones.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
10 years, 6 months
[JBoss JIRA] (SHRINKRES-140) Update Aether implementation to org.eclipse.aether one
by Michal Matloka (JIRA)
[ https://issues.jboss.org/browse/SHRINKRES-140?page=com.atlassian.jira.plu... ]
Michal Matloka commented on SHRINKRES-140:
------------------------------------------
[~alrubinger] so far still some tests fail. It seems that aether bahaviour has changed!! when resolving dependencies for child pom current version stopped including dependency management from parent pom so resolves wrong versions and tests fail o0
> Update Aether implementation to org.eclipse.aether one
> ------------------------------------------------------
>
> Key: SHRINKRES-140
> URL: https://issues.jboss.org/browse/SHRINKRES-140
> Project: ShrinkWrap Resolvers
> Issue Type: Component Upgrade
> Components: impl-maven
> Affects Versions: 2.0.0-beta-5
> Reporter: Karel Piwko
> Assignee: Michal Matloka
>
> Aether is now a part of org.eclipse foundation. We should update to newer version when they release first stable version.
> Update should not affect user at all, it should comprise of replacing imports with new ones.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
10 years, 6 months
[JBoss JIRA] (SHRINKRES-150) Wrong built WebArchive using Shrinkwrap Classpath resolution
by SBS JIRA Integration (JIRA)
[ https://issues.jboss.org/browse/SHRINKRES-150?page=com.atlassian.jira.plu... ]
SBS JIRA Integration updated SHRINKRES-150:
-------------------------------------------
Forum Reference: https://community.jboss.org/message/839879#839879, https://community.jboss.org/thread/233130 (was: https://community.jboss.org/thread/233130)
> Wrong built WebArchive using Shrinkwrap Classpath resolution
> ------------------------------------------------------------
>
> Key: SHRINKRES-150
> URL: https://issues.jboss.org/browse/SHRINKRES-150
> Project: ShrinkWrap Resolvers
> Issue Type: Bug
> Affects Versions: 2.0.0
> Environment: win 7 (64 bit), glassfish 3.1.2
> Reporter: Gunther Klein
> Assignee: Andrew Rubinger
>
> I have defined a simple war project and setup an arquillian test using shrinkwrap 2.0.0, that - as a test - just resolves the web archive via classpath resolution:
> @RunWith(Arquillian.class)
> public class ShrinkwrapTestIT {
> @Deployment
> public static Archive<?> createDeployment() {
> WebArchive war = Maven.resolver()
> .resolve("shrinkwrap.test:shrinkwrap.test:war:0.0.1-SNAPSHOT").withClassPathResolution(true)
> .withoutTransitivity().asSingle(WebArchive.class);
> System.out.println(war.toString(true));
> return war;
> }
> @Test
> public void test() {
> //do nothing
> }
> }
> The output shows, that the archive is incomplete (resource files are missing) and not even war conform:
> some_text_file.txt
> com/
> com/test/
> com/test/Test.class
> If i change the code to use .withClassPathResolution(false), the output is:
> /some_text_file.txt
> /index.jsp
> /com/
> /com/test/
> /com/test/Test.class
> /WEB-INF/
> /WEB-INF/web.xml
> /WEB-INF/sun-web.xml
> /META-INF/
> /META-INF/MANIFEST.MF
>
> Now the resources are included, but the class(es) are packaged at the top level and not under /WEB-INF/classes, so it still doesnt respresent a valid war. My pom looks like:
> <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>shrinkwrap.test</groupId>
> <artifactId>shrinkwrap.test</artifactId>
> <version>0.0.1-SNAPSHOT</version>
> <packaging>war</packaging>
> <properties>
> <project.build.sourceEncoding>ISO8859-1</project.build.sourceEncoding>
> <version.shrinkwrap.resolvers>2.0.0</version.shrinkwrap.resolvers>
> </properties>
> <dependencies>
> <!-- test dependencies -->
> <dependency>
> <groupId>junit</groupId>
> <artifactId>junit</artifactId>
> <version>4.11</version>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian.junit</groupId>
> <artifactId>arquillian-junit-container</artifactId>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian.container</groupId>
> <artifactId>arquillian-glassfish-remote-3.1</artifactId>
> <version>1.0.0.CR4</version>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>org.jboss.shrinkwrap.resolver</groupId>
> <artifactId>shrinkwrap-resolver-depchain</artifactId>
> <version>${version.shrinkwrap.resolvers}</version>
> <scope>test</scope>
> <type>pom</type>
> </dependency>
> </dependencies>
> <dependencyManagement>
> <dependencies>
> <!-- Override dependency resolver with latest version. This must go *BEFORE*
> the Arquillian BOM. -->
> <dependency>
> <groupId>org.jboss.shrinkwrap.resolver</groupId>
> <artifactId>shrinkwrap-resolver-bom</artifactId>
> <version>${version.shrinkwrap.resolvers}</version>
> <scope>import</scope>
> <type>pom</type>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian</groupId>
> <artifactId>arquillian-bom</artifactId>
> <version>1.1.1.Final</version>
> <scope>import</scope>
> <type>pom</type>
> </dependency>
> </dependencies>
> </dependencyManagement>
> <build>
> <plugins>
> <plugin>
> <groupId>org.apache.maven.plugins</groupId>
> <artifactId>maven-failsafe-plugin</artifactId>
> <version>2.16</version>
> <configuration>
> <skipTests>${skipITs}</skipTests>
> </configuration>
> <executions>
> <execution>
> <goals>
> <goal>integration-test</goal>
> <goal>verify</goal>
> </goals>
> </execution>
> </executions>
> </plugin>
> </plugins>
> </build>
> </project>
> Why is shrinkwrap giving me corrupt archives here in both cases? For the case with classpath resolution i would expect shrinkwrap to give me the war, that was built by maven in the package phase? Without classpath resolution i would expect shrinkwrap to resolve the war from maven respository (local or remote). Or is my understanding of shrinkwrap (classpath) resolution wrong here?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
10 years, 6 months
[JBoss JIRA] (SHRINKRES-150) Wrong built WebArchive using Shrinkwrap Classpath resolution
by Karel Piwko (JIRA)
[ https://issues.jboss.org/browse/SHRINKRES-150?page=com.atlassian.jira.plu... ]
Karel Piwko updated SHRINKRES-150:
----------------------------------
Forum Reference: https://community.jboss.org/thread/233130
> Wrong built WebArchive using Shrinkwrap Classpath resolution
> ------------------------------------------------------------
>
> Key: SHRINKRES-150
> URL: https://issues.jboss.org/browse/SHRINKRES-150
> Project: ShrinkWrap Resolvers
> Issue Type: Bug
> Affects Versions: 2.0.0
> Environment: win 7 (64 bit), glassfish 3.1.2
> Reporter: Gunther Klein
> Assignee: Andrew Rubinger
>
> I have defined a simple war project and setup an arquillian test using shrinkwrap 2.0.0, that - as a test - just resolves the web archive via classpath resolution:
> @RunWith(Arquillian.class)
> public class ShrinkwrapTestIT {
> @Deployment
> public static Archive<?> createDeployment() {
> WebArchive war = Maven.resolver()
> .resolve("shrinkwrap.test:shrinkwrap.test:war:0.0.1-SNAPSHOT").withClassPathResolution(true)
> .withoutTransitivity().asSingle(WebArchive.class);
> System.out.println(war.toString(true));
> return war;
> }
> @Test
> public void test() {
> //do nothing
> }
> }
> The output shows, that the archive is incomplete (resource files are missing) and not even war conform:
> some_text_file.txt
> com/
> com/test/
> com/test/Test.class
> If i change the code to use .withClassPathResolution(false), the output is:
> /some_text_file.txt
> /index.jsp
> /com/
> /com/test/
> /com/test/Test.class
> /WEB-INF/
> /WEB-INF/web.xml
> /WEB-INF/sun-web.xml
> /META-INF/
> /META-INF/MANIFEST.MF
>
> Now the resources are included, but the class(es) are packaged at the top level and not under /WEB-INF/classes, so it still doesnt respresent a valid war. My pom looks like:
> <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>shrinkwrap.test</groupId>
> <artifactId>shrinkwrap.test</artifactId>
> <version>0.0.1-SNAPSHOT</version>
> <packaging>war</packaging>
> <properties>
> <project.build.sourceEncoding>ISO8859-1</project.build.sourceEncoding>
> <version.shrinkwrap.resolvers>2.0.0</version.shrinkwrap.resolvers>
> </properties>
> <dependencies>
> <!-- test dependencies -->
> <dependency>
> <groupId>junit</groupId>
> <artifactId>junit</artifactId>
> <version>4.11</version>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian.junit</groupId>
> <artifactId>arquillian-junit-container</artifactId>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian.container</groupId>
> <artifactId>arquillian-glassfish-remote-3.1</artifactId>
> <version>1.0.0.CR4</version>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>org.jboss.shrinkwrap.resolver</groupId>
> <artifactId>shrinkwrap-resolver-depchain</artifactId>
> <version>${version.shrinkwrap.resolvers}</version>
> <scope>test</scope>
> <type>pom</type>
> </dependency>
> </dependencies>
> <dependencyManagement>
> <dependencies>
> <!-- Override dependency resolver with latest version. This must go *BEFORE*
> the Arquillian BOM. -->
> <dependency>
> <groupId>org.jboss.shrinkwrap.resolver</groupId>
> <artifactId>shrinkwrap-resolver-bom</artifactId>
> <version>${version.shrinkwrap.resolvers}</version>
> <scope>import</scope>
> <type>pom</type>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian</groupId>
> <artifactId>arquillian-bom</artifactId>
> <version>1.1.1.Final</version>
> <scope>import</scope>
> <type>pom</type>
> </dependency>
> </dependencies>
> </dependencyManagement>
> <build>
> <plugins>
> <plugin>
> <groupId>org.apache.maven.plugins</groupId>
> <artifactId>maven-failsafe-plugin</artifactId>
> <version>2.16</version>
> <configuration>
> <skipTests>${skipITs}</skipTests>
> </configuration>
> <executions>
> <execution>
> <goals>
> <goal>integration-test</goal>
> <goal>verify</goal>
> </goals>
> </execution>
> </executions>
> </plugin>
> </plugins>
> </build>
> </project>
> Why is shrinkwrap giving me corrupt archives here in both cases? For the case with classpath resolution i would expect shrinkwrap to give me the war, that was built by maven in the package phase? Without classpath resolution i would expect shrinkwrap to resolve the war from maven respository (local or remote). Or is my understanding of shrinkwrap (classpath) resolution wrong here?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
10 years, 6 months
[JBoss JIRA] (SHRINKRES-150) Wrong built WebArchive using Shrinkwrap Classpath resolution
by Karel Piwko (JIRA)
[ https://issues.jboss.org/browse/SHRINKRES-150?page=com.atlassian.jira.plu... ]
Karel Piwko updated SHRINKRES-150:
----------------------------------
Affects Version/s: 2.0.0
> Wrong built WebArchive using Shrinkwrap Classpath resolution
> ------------------------------------------------------------
>
> Key: SHRINKRES-150
> URL: https://issues.jboss.org/browse/SHRINKRES-150
> Project: ShrinkWrap Resolvers
> Issue Type: Bug
> Affects Versions: 2.0.0
> Environment: win 7 (64 bit), glassfish 3.1.2
> Reporter: Gunther Klein
> Assignee: Andrew Rubinger
>
> I have defined a simple war project and setup an arquillian test using shrinkwrap 2.0.0, that - as a test - just resolves the web archive via classpath resolution:
> @RunWith(Arquillian.class)
> public class ShrinkwrapTestIT {
> @Deployment
> public static Archive<?> createDeployment() {
> WebArchive war = Maven.resolver()
> .resolve("shrinkwrap.test:shrinkwrap.test:war:0.0.1-SNAPSHOT").withClassPathResolution(true)
> .withoutTransitivity().asSingle(WebArchive.class);
> System.out.println(war.toString(true));
> return war;
> }
> @Test
> public void test() {
> //do nothing
> }
> }
> The output shows, that the archive is incomplete (resource files are missing) and not even war conform:
> some_text_file.txt
> com/
> com/test/
> com/test/Test.class
> If i change the code to use .withClassPathResolution(false), the output is:
> /some_text_file.txt
> /index.jsp
> /com/
> /com/test/
> /com/test/Test.class
> /WEB-INF/
> /WEB-INF/web.xml
> /WEB-INF/sun-web.xml
> /META-INF/
> /META-INF/MANIFEST.MF
>
> Now the resources are included, but the class(es) are packaged at the top level and not under /WEB-INF/classes, so it still doesnt respresent a valid war. My pom looks like:
> <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>shrinkwrap.test</groupId>
> <artifactId>shrinkwrap.test</artifactId>
> <version>0.0.1-SNAPSHOT</version>
> <packaging>war</packaging>
> <properties>
> <project.build.sourceEncoding>ISO8859-1</project.build.sourceEncoding>
> <version.shrinkwrap.resolvers>2.0.0</version.shrinkwrap.resolvers>
> </properties>
> <dependencies>
> <!-- test dependencies -->
> <dependency>
> <groupId>junit</groupId>
> <artifactId>junit</artifactId>
> <version>4.11</version>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian.junit</groupId>
> <artifactId>arquillian-junit-container</artifactId>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian.container</groupId>
> <artifactId>arquillian-glassfish-remote-3.1</artifactId>
> <version>1.0.0.CR4</version>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>org.jboss.shrinkwrap.resolver</groupId>
> <artifactId>shrinkwrap-resolver-depchain</artifactId>
> <version>${version.shrinkwrap.resolvers}</version>
> <scope>test</scope>
> <type>pom</type>
> </dependency>
> </dependencies>
> <dependencyManagement>
> <dependencies>
> <!-- Override dependency resolver with latest version. This must go *BEFORE*
> the Arquillian BOM. -->
> <dependency>
> <groupId>org.jboss.shrinkwrap.resolver</groupId>
> <artifactId>shrinkwrap-resolver-bom</artifactId>
> <version>${version.shrinkwrap.resolvers}</version>
> <scope>import</scope>
> <type>pom</type>
> </dependency>
> <dependency>
> <groupId>org.jboss.arquillian</groupId>
> <artifactId>arquillian-bom</artifactId>
> <version>1.1.1.Final</version>
> <scope>import</scope>
> <type>pom</type>
> </dependency>
> </dependencies>
> </dependencyManagement>
> <build>
> <plugins>
> <plugin>
> <groupId>org.apache.maven.plugins</groupId>
> <artifactId>maven-failsafe-plugin</artifactId>
> <version>2.16</version>
> <configuration>
> <skipTests>${skipITs}</skipTests>
> </configuration>
> <executions>
> <execution>
> <goals>
> <goal>integration-test</goal>
> <goal>verify</goal>
> </goals>
> </execution>
> </executions>
> </plugin>
> </plugins>
> </build>
> </project>
> Why is shrinkwrap giving me corrupt archives here in both cases? For the case with classpath resolution i would expect shrinkwrap to give me the war, that was built by maven in the package phase? Without classpath resolution i would expect shrinkwrap to resolve the war from maven respository (local or remote). Or is my understanding of shrinkwrap (classpath) resolution wrong here?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
10 years, 6 months