Mac problem with org.sikuli.script.SikuliXception: loadlib: libopencv_java2411.dylib not in any libs folder, but it might be a problem OpenCV

Asked by Anshul Harinkhere

Hi
I have sikuli selenium project configured and was running fine on Mac with the below added dependencies But all of sudden we are getting the below error.

this is my configuration:

os.arch = aarch64
os.name = Mac OS X
os.version = 13.0.1
Java version = 11

Pom File
<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>org.alfresco</groupId>
    <artifactId>desktop-sync</artifactId>
    <version>1.1.0-SNAPSHOT</version>
    <prerequisites>
        <maven>3.0.4</maven>
    </prerequisites>

    <distributionManagement>
        <repository>
            <id>alfresco-internal</id>
            <name>Alfresco Releases Repository</name>
            <url>https://artifacts.alfresco.com/nexus/content/repositories/internal-releases</url>
        </repository>
        <snapshotRepository>
            <id>alfresco-internal-snapshots</id>
            <name>Alfresco Snapshots Repository</name>
            <url>https://artifacts.alfresco.com/nexus/content/repositories/internal-snapshots</url>
        </snapshotRepository>
    </distributionManagement>

    <repositories>
        <repository>
            <id>alfresco-internal</id>
            <url>https://artifacts.alfresco.com/nexus/content/groups/internal</url>
        </repository>
        <repository>
            <id>alfresco-public</id>
            <url>https://artifacts.alfresco.com/nexus/content/groups/public</url>
        </repository>
        <repository>
            <id>alfresco-releases</id>
            <url>https://artifacts.alfresco.com/nexus/content/repositories/releases</url>
        </repository>

    </repositories>

    <properties>
        <suiteXml>windows-end-to-end-tests.xml</suiteXml>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <ldtp.version>1.0.0-SNAPSHOT</ldtp.version>
        <tas.utility.version>3.0.42</tas.utility.version>
        <tas.cmis.version>1.26</tas.cmis.version>
        <tas.restapi.version>1.52</tas.restapi.version>
        <rm.restapi.version>3.3.0</rm.restapi.version>
        <testng>7.1.0</testng>
        <apache.poi.version>4.0.0</apache.poi.version>
        <maven-compiler-plugin.version>3.8.0</maven-compiler-plugin.version>
        <java.version>11</java.version>
        <maven-remote-resources-plugin.version>1.7.0</maven-remote-resources-plugin.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>${testng}</version>
        </dependency>

        <dependency>
            <groupId>org.alfresco</groupId>
            <artifactId>ldtp</artifactId>
            <version>${ldtp.version}</version>
        </dependency>

        <dependency>
            <groupId>org.sikuli</groupId>
            <artifactId>sikuli-api</artifactId>
            <version>1.2.0</version>
        </dependency>

        <dependency>
            <groupId>org.sikuli</groupId>
            <artifactId>sikuli-core</artifactId>
            <version>1.2.2</version>
        </dependency>

        <dependency>
            <groupId>com.sikulix</groupId>
            <artifactId>sikulixapi</artifactId>
            <version>2.0.4</version>
            <exclusions>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-nop</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <dependency>
            <groupId>commons-configuration</groupId>
            <artifactId>commons-configuration</artifactId>
            <version>1.10</version>
        </dependency>

<!-- <dependency>-->
<!-- <groupId>org.openpnp</groupId>-->
<!-- <artifactId>opencv</artifactId>-->
<!-- <version>4.5.5-1</version>-->
<!-- </dependency>-->

        <!-- alfresco tester settings -->
        <dependency>
            <groupId>org.alfresco.tas</groupId>
            <artifactId>utility</artifactId>
            <version>${tas.utility.version}</version>
        </dependency>

        <dependency>
            <groupId>org.alfresco.tas</groupId>
            <artifactId>cmis</artifactId>
            <version>${tas.cmis.version}</version>
        </dependency>

        <dependency>
            <groupId>org.alfresco.tas</groupId>
            <artifactId>restapi</artifactId>
            <version>${tas.restapi.version}</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>${apache.poi.version}</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml -->
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>${apache.poi.version}</version>
        </dependency>

        <dependency>
            <groupId>org.alfresco</groupId>
            <artifactId>alfresco-governance-services-automation-community-rest-api</artifactId>
            <version>${rm.restapi.version}</version>
        </dependency>
    </dependencies>

    <build>
        <sourceDirectory>src/main/java</sourceDirectory>
        <testSourceDirectory>src/test/java</testSourceDirectory>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
            </resource>
        </resources>
        <testResources>
            <testResource>
                <directory>src/test/resources</directory>
            </testResource>
        </testResources>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>${maven-compiler-plugin.version}</version>
                <configuration>
                    <release>${java.version}</release>
                    <showWarnings>true</showWarnings>
                    <showDeprecation>true</showDeprecation>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.22.1</version>
                <configuration>
                    <suiteXmlFiles>
                        <suiteXmlFile>src/test/resources/suites/${suiteXml}</suiteXmlFile>
                    </suiteXmlFiles>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-remote-resources-plugin</artifactId>
                <version>${maven-remote-resources-plugin.version}</version>
                <configuration>
                    <resourceBundles>
                        <resourceBundle>org.alfresco.tas:utility:${tas.utility.version}</resourceBundle>
                    </resourceBundles>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>process</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>

Error:

Caused by: org.sikuli.script.SikuliXception: loadlib: libopencv_java2411.dylib not in any libs folder
 at org.sikuli.script.support.RunTime.libsLoad(RunTime.java:1498) ~[sikulixapi-2.0.4.jar:?]
 at org.sikuli.script.support.RunTime.loadLibrary(RunTime.java:1689) ~[sikulixapi-2.0.4.jar:?]
 at org.sikuli.script.Finder$Finder2.<clinit>(Finder.java:536) ~[sikulixapi-2.0.4.jar:?]
 at org.sikuli.script.Pattern.<init>(Pattern.java:127) ~[sikulixapi-2.0.4.jar:?]
 at org.alfresco.os.win.desktopsync.explorer.taskbar.TaskbarIcon.<init>(TaskbarIcon.java:56) ~[classes/:?]
 at org.alfresco.os.win.desktopsync.explorer.taskbar.sysmenu.SyncSystemMenu.<init>(SyncSystemMenu.java:31) ~[classes/:?]
 at org.alfresco.common.application.AbstractDesktopClientActions.<clinit>(AbstractDesktopClientActions.java:61) ~[classes/:?]
 at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?]
 at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:?]
 at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(Delegatin

java.lang.IllegalStateException: Failed to load ApplicationContext
 at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:132) ~[spring-test-5.2.4.RELEASE.jar:5.2.4.RELEASE]
 at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:123) ~[spring-test-5.2.4.RELEASE.jar:5.2.4.RELEASE]
 at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:118) ~[spring-test-5.2.4.RELEASE.jar:5.2.4.RELEASE]
 at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:83) ~[spring-test-5.2.4.RELEASE.jar:5.2.4.RELEASE]
 at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:244) [spring-test-5.2.4.RELEASE.jar:5.2.4.RELEASE]
 at org.springframework.test.context.testng.AbstractTestNGSpringContextTests.springTestContextPrepareTestInstance(AbstractTestNGSpringContextTests.java:146) [spring-test-5.2.4.RELEASE.jar:5.2.4.RELEASE]
 at org.alfresco.desktopsync.AbstractDesktopSyncTests.suiteSetup(AbstractDesktopSyncTests.java:146) [test-classes/:?]
 at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
 at jdk.inter

Question information

Language:
English Edit question
Status:
Solved
For:
SikuliX Edit question
Assignee:
No assignee Edit question
Solved by:
RaiMan
Solved:
Last query:
Last reply:
Revision history for this message
RaiMan (raimund-hocke) said :
#1

SikuliX versions 2.0.5 and lower cannot be used on Mac Mx

Revision history for this message
Anshul Harinkhere (anshulharinkhere123) said :
#2

Any new release coming up for Apple M1 Chip Macbbooks for Sikuli support?

Revision history for this message
Best RaiMan (raimund-hocke) said :
#3

You might try with the 2.0.6-snapshot from the GitHub page.

I hope to get the final ready within the next 3 months.

Revision history for this message
Anshul Harinkhere (anshulharinkhere123) said :
#4

Thanks RaiMan, that solved my question.