### Run Cantaloupe Tests with Docker Compose Source: https://github.com/cantaloupe-project/cantaloupe/blob/develop/README.md Starts all necessary dependencies in Docker containers and runs the Cantaloupe tests. This simplifies the setup for the 'freedeps' profile. ```bash docker-compose -f docker/{platform}/docker-compose.yml up --build --exit-code-from cantaloupe ``` -------------------------------- ### Run All Tests with Maven Source: https://github.com/cantaloupe-project/cantaloupe/blob/develop/README.md Executes all available Maven tests, including those with proprietary dependencies like Kakadu and Microsoft Azure. This requires additional setup. ```bash mvn clean test ``` -------------------------------- ### List Installed libstdc++ Version Source: https://github.com/cantaloupe-project/cantaloupe/blob/develop/dist/deps/Jammy-x86-64/README.md Use this command to check the installed version of libstdc++ on your Ubuntu system. This is crucial for determining compatibility with Kakadu compilation requirements. ```bash apt list --installed|grep libstdc ``` ```text WARNING: apt does not have a stable CLI interface. Use with caution in scripts. libstdc++6/jammy-updates,jammy-security,now 12.3.0-1ubuntu1~22.04 amd64 [installed,automatic] ``` -------------------------------- ### Build and Run Cantaloupe with Maven Source: https://github.com/cantaloupe-project/cantaloupe/blob/develop/README.md Builds and runs the Cantaloupe project using Maven, specifying a custom configuration file. Ensure cantaloupe.properties is configured. ```bash mvn clean compile exec:java -Dcantaloupe.config=cantaloupe.properties ``` -------------------------------- ### Run Packaged Cantaloupe JAR Source: https://github.com/cantaloupe-project/cantaloupe/blob/develop/README.md Executes the packaged Cantaloupe JAR file. Requires specifying the classpath and the main entry point class, along with the configuration file path. ```bash java -cp cantaloupe-{version}.jar -Dcantaloupe.config=... edu.illinois.library.cantaloupe.StandaloneEntry ``` -------------------------------- ### Build Kakadu Native Libraries on Linux Source: https://github.com/cantaloupe-project/cantaloupe/blob/develop/dist/deps/README.md Use these commands to build the Kakadu shared libraries (`libkdu_vNXX.so` & `libkdu_jni.so`) on a Linux system. Ensure JAVA_HOME is set correctly. ```bash export JAVA_HOME=/usr/lib/jvm/java cd coresys/make make -f Makefile-Linux-x86-64-gcc cd ../../managed/make make -f Makefile-Linux-x86-64-gcc cd ../../lib/Linux-x86-64-gcc # Builds `libkdu_vNXX.so` & `libkdu_jni.so` # Java class files are in `../../../java/kdu_jni` ``` -------------------------------- ### Build Kakadu Native Libraries on Windows Source: https://github.com/cantaloupe-project/cantaloupe/blob/develop/dist/deps/README.md Steps to build the Kakadu native libraries on Windows using Visual Studio 2015. This involves building `coresys` and `kdu_jni`, and configuring include paths for JDK headers. ```powershell 1. Install the JDK 2. Install Visual Studio with the Microsoft Foundation Classes for C++ component 3. Build `coresys` 1. Open `coresys\coresys_2015` 2. Retarget solution to the 8.1 platform version 3. Build with Release configuration & x64 platform 4. Build `kdu_jni` 1. Open `managed\kdu_managed_2015` 2. Add the JDK headers to the include path 1. Right-click on the `kdu_jni` solution 2. Go to Properties -> VC++ Directories -> Include Directories 3. Add `jdk-x.x.x\include` and `jdk-x.x.x\include\win32` paths to JDK headers 3. Retarget solution to the 8.1 platform version 4. Build with Release configuration & x64 platform The resulting files are in `..\..\bin_x64`: * `kdu_v80R.dll` * `kdu_a80R.dll` * `kdu_jni.dll` ``` -------------------------------- ### Run Free Dependency Tests with Maven Source: https://github.com/cantaloupe-project/cantaloupe/blob/develop/README.md Executes Maven tests that depend on open-source tools and libraries. This profile is used in continuous integration and requires specific dependencies like MinIO, FFmpeg, etc. ```bash mvn clean test -Pfreedeps ``` -------------------------------- ### Run No-Dependency Tests with Maven Source: https://github.com/cantaloupe-project/cantaloupe/blob/develop/README.md Executes Maven tests that have no external dependencies. This profile is useful for quick checks without setting up external services. ```bash mvn clean test -Pnodeps ``` -------------------------------- ### Package Cantaloupe JAR with Maven Source: https://github.com/cantaloupe-project/cantaloupe/blob/develop/README.md Packages the Cantaloupe project into a release JAR file using Maven, skipping tests. The JAR can then be executed with specified Java options. ```bash mvn clean package -DskipTests ``` -------------------------------- ### Build Kakadu Native Libraries on macOS Source: https://github.com/cantaloupe-project/cantaloupe/blob/develop/dist/deps/README.md Commands to build the `kdu_jni` target using xcodebuild on macOS. The resulting binaries are located in `../../bin` and Java class files in `../../java/kdu_jni`. ```bash cd managed xcodebuild -project managed.xcodeproj -target kdu_jni -configuration Release clean xcodebuild -project managed.xcodeproj -target kdu_jni -configuration Release # Resulting binaries are in ../../bin # Java class files are in ../../java/kdu_jni ``` -------------------------------- ### Run Performance Benchmarks with Maven Source: https://github.com/cantaloupe-project/cantaloupe/blob/develop/README.md Executes performance tests for Cantaloupe using JMH. This profile is used to measure the performance characteristics of the application. ```bash mvn clean test -Pbenchmark ``` -------------------------------- ### Push Branch with Git Source: https://github.com/cantaloupe-project/cantaloupe/blob/develop/README.md Pushes the current local feature branch to the remote origin repository. This makes the changes available for creating a pull request. ```bash git push origin feature/my-new-feature ``` -------------------------------- ### Commit Changes with Git Source: https://github.com/cantaloupe-project/cantaloupe/blob/develop/README.md Commits staged changes in a Git repository with a descriptive message. This is a standard step in the contribution workflow. ```bash git commit -am 'Add some feature' ``` -------------------------------- ### Modify JdbcCache Database Schema Source: https://github.com/cantaloupe-project/cantaloupe/blob/develop/UPGRADING.md When upgrading to Cantaloupe 3.0 and using JdbcCache, alter your database schema by renaming the 'last_modified' columns to 'last_accessed' in both the info and derivative_image tables. ```sql ALTER TABLE {JdbcCache.info_table} CHANGE COLUMN last_modified last_accessed; ALTER TABLE {JdbcCache.derivative_image_table} CHANGE COLUMN last_modified last_accessed; ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.