Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BlockHoundTestExecutionListener could not be instantiated (JDK 17) #308

Closed
kressi opened this issue Dec 3, 2022 · 3 comments
Closed

BlockHoundTestExecutionListener could not be instantiated (JDK 17) #308

kressi opened this issue Dec 3, 2022 · 3 comments
Assignees
Labels
status/has-workaround This has a known workaround described

Comments

@kressi
Copy link

kressi commented Dec 3, 2022

Expected Behavior

BlockHoundTestExecutionListener can be instantiated

Actual Behavior

Error:  Please refer to /home/runner/work/blockhound-issue/blockhound-issue/target/surefire-reports for the individual test results.
Error:  Please refer to dump files (if any exist) [date].dump, [date]-jvmRun[N].dump and [date].dumpstream.
Error: [ERROR] There was an error in the forked process
Error:  java.util.ServiceConfigurationError: org.junit.platform.launcher.TestExecutionListener: Provider reactor.blockhound.junit.platform.BlockHoundTestExecutionListener could not be instantiated
Error:  org.apache.maven.surefire.booter.SurefireBooterForkException: There was an error in the forked process
Error:  java.util.ServiceConfigurationError: org.junit.platform.launcher.TestExecutionListener: Provider reactor.blockhound.junit.platform.BlockHoundTestExecutionListener could not be instantiated

Steps to Reproduce

Add blockhound and JUnit dependencies to minimal Sprint Boot project and run tests on JDK 17.

Possible Solution

Your Environment

  • Reactor version(s) used:
  • Other relevant libraries versions (eg. netty, ...): Spring boot dependencies 2.7.6
  • JVM version JDK 17:
  • OS and version (eg uname -a): Ubuntu

https://github.com/kressi/blockhound-issue/blob/main/pom.xml

@darkrwe
Copy link

darkrwe commented Dec 5, 2022

Hi,
any workaround exist for this ?

@pderop
Copy link
Member

pderop commented Jan 3, 2023

Hi @kressi ,

I tested your sample project using the following plugin and it seems to work with jdk17 (see #33 for more information).

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.22.2</version>
                <configuration>
                    <argLine>-XX:+AllowRedefinitionToAddDeleteMethods</argLine>
                </configuration>
            </plugin>

Please confirm that it also works for you ?
thanks.

@pderop pderop self-assigned this Jan 3, 2023
@pderop pderop added the for/user-attention This issue needs user attention (feedback, rework, etc...) label Jan 3, 2023
@pderop
Copy link
Member

pderop commented Jan 18, 2023

@kressi ,

so, I'm closing this issue. For the reference, here is the modified pom.xml which I think solves the problem
The documentation has been updated with a special note about using JDK13+ versions in #312.
(reopen this issue if needed, thanks).

    <?xml version="1.0" encoding="UTF-8"?>
    <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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>3.0.0</version>
            <relativePath/> <!-- lookup parent from repository -->
        </parent>
        <groupId>com.github.kressi</groupId>
        <artifactId>blockhound-issue</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <name>blockhound-issue</name>
        <description>Demo project for Spring Boot</description>
        <properties>
            <java.version>17</java.version>
            <blockhound.version>1.0.6.RELEASE</blockhound.version>
        </properties>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter</artifactId>
            </dependency>
            <dependency>
                <groupId>io.projectreactor</groupId>
                <artifactId>reactor-core</artifactId>
            </dependency>
    
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>io.projectreactor.tools</groupId>
                <artifactId>blockhound</artifactId>
                <version>${blockhound.version}</version>
            </dependency>
            <dependency>
                <groupId>io.projectreactor.tools</groupId>
                <artifactId>blockhound-junit-platform</artifactId>
                <version>${blockhound.version}</version>
            </dependency>
        </dependencies>
    
        <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
    
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.22.2</version>
                    <configuration>
                        <argLine>-XX:+AllowRedefinitionToAddDeleteMethods</argLine>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    </project>

@pderop pderop added status/has-workaround This has a known workaround described and removed for/user-attention This issue needs user attention (feedback, rework, etc...) labels Jan 18, 2023
@pderop pderop closed this as completed Jan 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status/has-workaround This has a known workaround described
Projects
None yet
Development

No branches or pull requests

3 participants