docs.sheetjs.com/tests/engines/javet.sh

39 lines
1.2 KiB
Bash
Raw Normal View History

2026-03-05 05:25:10 +00:00
#!/bin/bash
# https://docs.sheetjs.com/docs/demos/engines/v8#java
cd /tmp
rm -rf sheetjs-javet
mkdir sheetjs-javet
cd sheetjs-javet
OS="$(uname -s)"
ARCH="$(uname -m)"
case "$OS" in
Darwin) OS_ARTIFACT="macos" ;;
Linux) OS_ARTIFACT="linux" ;;
*) echo "Unsupported OS: $OS" ; exit 1 ;;
esac
case "$ARCH" in
x86_64) ARCH_ARTIFACT="x86_64" ;;
aarch64|arm64) ARCH_ARTIFACT="arm64" ;;
*) echo "Unsupported architecture: $ARCH"; exit 1 ;;
esac
echo "Downloading Javet for $OS ($ARCH_ARTIFACT)..."
JAVET_VERSION="4.1.1"
JAVET_BASE_URL="https://repo1.maven.org/maven2/com/caoccao/javet"
curl -LO "$JAVET_BASE_URL/javet/$JAVET_VERSION/javet-$JAVET_VERSION.jar"
curl -LO "$JAVET_BASE_URL/javet-v8-$OS_ARTIFACT-$ARCH_ARTIFACT/$JAVET_VERSION/javet-v8-$OS_ARTIFACT-$ARCH_ARTIFACT-$JAVET_VERSION.jar"
curl -LO "https://cdn.sheetjs.com/xlsx-latest/package/dist/xlsx.full.min.js"
curl -LO "https://docs.sheetjs.com/pres.xlsx"
curl -LO "https://docs.sheetjs.com/v8/SheetJSJavet.java"
javac -cp ".:javet-$JAVET_VERSION.jar:javet-v8-$OS_ARTIFACT-$ARCH_ARTIFACT-$JAVET_VERSION.jar" SheetJSJavet.java
java -cp ".:javet-$JAVET_VERSION.jar:javet-v8-$OS_ARTIFACT-$ARCH_ARTIFACT-$JAVET_VERSION.jar" SheetJSJavet pres.xlsx