Источник нераспознанных опций при запуске netlogo-headless.sh? - PullRequest
0 голосов
/ 08 января 2019

Я хотел бы запустить NetLogo без графического интерфейса (без заголовка), и у меня возникают проблемы с запуском сценария netlogo-headless.sh (т. Е. Различные «нераспознанные параметры»).

Я отсканировал все, что мог, и попробовал поиграть с синтаксисом; Тем не менее, я не особенно разбираюсь в Java, и мне трудно найти решение.

Вот скрипт netlogo-headless.sh

#!/bin/bash

BASE_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"

if [[ ${JAVA_HOME+1} ]]; then
  JAVA="${JAVA_HOME}/bin/java"
else
  echo "JAVA_HOME undefined, using java from path. For control over exact java version, set JAVA_HOME"
  JAVA="java"
fi;

# -Xmx1024m             use up to 4GB RAM (edit to increase)
# -XX:+UseParallelGC    The parallel collector maximizes throughput
# -Dfile.encoding=UTF-8 ensure Unicode characters in model files are compatible cross-platform
JVM_OPTS=(-Xmx1024m -XX:+UseParallelGC -Dfile.encoding=UTF-8)
OPTS_INDEX=2

ARGS=()
INDEX=0

for arg in "$@"; do
  if [[ "$arg" == "--3D" ]]; then
    JVM_OPTS[OPTS_INDEX++]="-Dorg.nlogo.is3d=true"
  elif [[ "$arg" == -D* ]]; then
    JVM_OPTS[OPTS_INDEX++]="$arg"
  else
    ARGS[INDEX++]="$arg"
  fi
done

RAW_CLASSPATH="Java/args4j-2.0.12.jar:Java/asm-all-5.0.4.jar:Java/asm-all-5.0.4.jar:Java/asm-all-5.0.4.jar:Java/autolink-0.6.0.jar:Java/autolink-0.6.0.jar:Java/behaviorsearch.jar:Java/commons-codec-1.10.jar:Java/commons-codec-1.10.jar:Java/commons-logging-1.1.1.jar:Java/commons-logging-1.1.1.jar:Java/config-1.3.1.jar:Java/config-1.3.1.jar:Java/flexmark-0.20.0.jar:Java/flexmark-0.20.0.jar:Java/flexmark-ext-autolink-0.20.0.jar:Java/flexmark-ext-autolink-0.20.0.jar:Java/flexmark-ext-escaped-character-0.20.0.jar:Java/flexmark-ext-escaped-character-0.20.0.jar:Java/flexmark-ext-typographic-0.20.0.jar:Java/flexmark-ext-typographic-0.20.0.jar:Java/flexmark-formatter-0.20.0.jar:Java/flexmark-formatter-0.20.0.jar:Java/flexmark-util-0.20.0.jar:Java/flexmark-util-0.20.0.jar:Java/gluegen-rt-2.3.2.jar:Java/gluegen-rt-2.3.2.jar:Java/httpclient-4.2.jar:Java/httpclient-4.2.jar:Java/httpcore-4.2.jar:Java/httpcore-4.2.jar:Java/httpmime-4.2.jar:Java/httpmime-4.2.jar:Java/java-objc-bridge-1.0.0.jar:Java/jcommon-1.0.16.jar:Java/jfreechart-1.0.13.jar:Java/jhotdraw-6.0b1.jar:Java/jhotdraw-6.0b1.jar:Java/jmf-2.1.1e.jar:Java/jmf-2.1.1e.jar:Java/jna-4.2.2.jar:Java/jogl-all-2.3.2.jar:Java/jogl-all-2.3.2.jar:Java/json-simple-1.1.1.jar:Java/json-simple-1.1.1.jar:Java/log4j-1.2.16.jar:Java/log4j-1.2.16.jar:Java/macro-compat_2.12-1.1.1.jar:Java/macro-compat_2.12-1.1.1.jar:Java/macro-compat_2.12-1.1.1.jar:Java/netlogo-6.0.4.jar:Java/netlogo-6.0.4.jar:Java/netlogo-mac-app.jar:Java/parboiled_2.12-2.1.3.jar:Java/parboiled_2.12-2.1.3.jar:Java/parboiled_2.12-2.1.3.jar:Java/picocontainer-2.13.6.jar:Java/picocontainer-2.13.6.jar:Java/picocontainer-2.13.6.jar:Java/rsyntaxtextarea-2.6.0.jar:Java/rsyntaxtextarea-2.6.0.jar:Java/scala-library-2.12.0.jar:Java/scala-library.jar:Java/scala-library.jar:Java/scala-parser-combinators_2.12-1.0.4.jar:Java/scala-parser-combinators_2.12-1.0.5.jar:Java/scala-parser-combinators_2.12-1.0.5.jar:Java/shapeless_2.12-2.3.2.jar:Java/shapeless_2.12-2.3.2.jar:Java/shapeless_2.12-2.3.2.jar"
CLASSPATH=''

for jar in `echo $RAW_CLASSPATH | sed 's/:/ /g'`; do
  CLASSPATH="$CLASSPATH:$BASE_DIR/$jar"
done

CLASSPATH=`echo $CLASSPATH | sed 's/://'`

# -classpath ....         specify jars
# org.nlogo.headless.Main specify we want headless, not GUI
# "${ARGS[0]}"            pass along any additional arguments
$JAVA "${JVM_OPTS[@]}" -Dnetlogo.extensions.dir="${BASE_DIR}/extensions" -classpath "$CLASSPATH" org.nlogo.headless.Main "${ARGS[@]}"

Здесь вывод от клеммы

~/filepath \ 
java_home: unrecognized option `-mx1024m'
java_home: unrecognized option `-:+UseParallelGC'
java_home: unrecognized option `-Dfile.encoding=UTF-8'
java_home: unrecognized option `-Dnetlogo.extensions.dir=/Users/filepath/NetLogo6.0.4/extensions'
java_home: unrecognized option `-classpath'
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
    <dict>
        <key>JVMArch</key>
        <string>x86_64</string>
        <key>JVMBlacklisted</key>
        <false/>
        <key>JVMBundleID</key>
        <string>com.oracle.java.11.0.1.jdk</string>
        <key>JVMEnabled</key>
        <true/>
        <key>JVMHomePath</key>
        <string>/Library/Java/JavaVirtualMachines/jdk-11.0.1.jdk/Contents/Home</string>
        <key>JVMIsBuiltIn</key>
        <false/>
        <key>JVMName</key>
        <string>Java SE 11.0.1</string>
        <key>JVMPlatformVersion</key>
        <string>11.0</string>
        <key>JVMVendor</key>
        <string>Oracle Corporation</string>
        <key>JVMVersion</key>
        <string>11.0.1</string>
    </dict>
</array>
</plist>

Я должен быть в состоянии передать эту команду и назначить файлы для использования в качестве файлов эксперимента и модели; Тем не менее, я продолжаю получать эту ошибку, прежде чем я доберусь до этой точки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...