ℹ️ Skipped - page is already crawled
| Filter | Status | Condition | Details |
|---|---|---|---|
| HTTP status | PASS | download_http_code = 200 | HTTP 200 |
| Age cutoff | PASS | download_stamp > now() - 6 MONTH | 0.1 months ago |
| History drop | PASS | isNull(history_drop_reason) | No drop reason |
| Spam/ban | PASS | fh_dont_index != 1 AND ml_spam_score = 0 | ml_spam_score=0 |
| Canonical | PASS | meta_canonical IS NULL OR = '' OR = src_unparsed | Not set |
| Property | Value |
|---|---|
| URL | https://scala-cli.virtuslab.org/docs/reference/cli-options/ |
| Last Crawled | 2026-04-11 00:46:41 (1 day ago) |
| First Indexed | 2022-11-14 05:50:00 (3 years ago) |
| HTTP Status Code | 200 |
| Meta Title | Command-line options | Scala CLI |
| Meta Description | This is a summary of options that are available for each subcommand of the scala-cli command. |
| Meta Canonical | null |
| Boilerpipe Text | This is a summary of options that are available for each subcommand of the
scala-cli
command.
Scalac options forwarding
All options that start with:
-g
-language
-opt
-P
-target
-V
-W
-X
-Y
are assumed to be Scala compiler options and will be propagated to Scala Compiler. This applies to all commands that uses compiler directly or indirectly.
Scalac options that are directly supported in scala CLI (so can be provided as is, without any prefixes etc.):
-encoding
-release
-color
-nowarn
-feature
-deprecation
-indent
-no-indent
-unchecked
-rewrite
-old-syntax
-new-syntax
Benchmarking options
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--jmh
Run JMH benchmarks
--jmh-version
Set JMH version (default: 1.37)
Compilation server options
Available in commands:
bloop
,
bloop exit
,
bloop output
,
bloop start
,
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
,
uninstall
--bloop-bsp-protocol
[Internal]
Protocol to use to open a BSP connection with Bloop
--bloop-bsp-socket
[Internal]
Socket file to use to open a BSP connection with Bloop
--bloop-host
[Internal]
Host the compilation server should bind to
--bloop-port
[Internal]
Port the compilation server should bind to (pass
-1
to pick a random port)
--bloop-daemon-dir
[Internal]
Daemon directory of the Bloop daemon (directory with lock, pid, and socket files)
--bloop-version
[Internal]
If Bloop isn't already running, the version we should start
--bloop-bsp-timeout
[Internal]
Maximum duration to wait for the BSP connection to be opened
--bloop-bsp-check-period
[Internal]
Duration between checks of the BSP connection state
--bloop-startup-timeout
[Internal]
Maximum duration to wait for the compilation server to start up
--bloop-default-java-opts
[Internal]
Include default JVM options for Bloop
--bloop-java-opt
[Internal]
Pass java options to use by Bloop server
--bloop-global-options-file
[Internal]
Bloop global options file
--bloop-jvm
[Internal]
JVM to use to start Bloop (e.g. 'system|17', 'temurin:21', …)
--bloop-working-dir
[Internal]
Working directory for Bloop, if it needs to be started
--server
Enable / disable usage of Bloop compilation server. Bloop is used by default so use
--server=false
to disable it. Disabling compilation server allows to test compilation in more controlled mannter (no caching or incremental compiler) but has a detrimental effect of performance.
Compile options
Available in commands:
compile
--print-class-path
Aliases:
-p
,
--print-classpath
Print the resulting class path
Config options
Available in commands:
config
--dump
[Internal]
Dump config DB as JSON
--create-pgp-key
Create PGP keychain in config
--pgp-password
Aliases:
--passphrase
A password used to encode the private PGP keychain
--email
Email used to create the PGP keychains in config
--password-value
When accessing config's content print the password value rather than how to get the password
When saving an entry in config save the password value rather than how to get the password
e.g. print/save the value of environment variable ENV_VAR rather than "env:ENV_VAR"
--unset
Aliases:
--remove
Remove an entry from config
--https-only
For repository.credentials and publish.credentials, whether these credentials should be HTTPS only (default: true)
--match-host
For repository.credentials, whether to use these credentials automatically based on the host
--optional
For repository.credentials, whether to use these credentials are optional
--pass-on-redirect
For repository.credentials, whether to use these credentials should be passed upon redirection
--force
Aliases:
-f
Force overwriting values for key
Coursier options
Available in commands:
bloop
,
bloop exit
,
bloop start
,
bsp
,
compile
,
config
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
pgp push
,
publish
,
publish local
,
publish setup
,
repl
,
console
,
run
,
github secret create
,
gh secret create
,
setup-ide
,
shebang
,
test
,
uninstall
--ttl
[Internal]
Specify a TTL for changing dependencies, such as snapshots
--cache
[Internal]
Set the coursier cache location
--coursier-validate-checksums
[Internal]
Enable checksum validation of artifacts downloaded by coursier
--offline
Disable using the network to download artifacts, use the local cache only
Cross options
Available in commands:
compile
,
doc
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
shebang
,
test
--cross
Run given command against all provided Scala versions and/or platforms
Debug options
Available in commands:
bloop
,
bloop start
,
bsp
,
compile
,
config
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
pgp push
,
publish
,
publish local
,
publish setup
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--debug
Turn debugging on
--debug-port
Debug port (5005 by default)
--debug-mode
Debug mode (attach by default)
Dependency options
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--dependency
Aliases:
--dep
Add dependencies
--compile-only-dependency
Aliases:
--compile-dep
,
--compile-lib
Add compile-only dependencies
--repository
Aliases:
-r
,
--repo
Add repositories for dependency resolution.
Accepts predefined repositories supported by Coursier (like
sonatype:snapshots
,
ivy2Local
or
m2Local
) or a URL of the root of Maven repository
--compiler-plugin
Aliases:
-P
,
--plugin
Add compiler plugin dependencies
Dependency update options
Available in commands:
dependency-update
--all
Update all dependencies if a newer version was released
Doc options
Available in commands:
doc
--output
Aliases:
-o
Set the destination path
--force
Aliases:
-f
Overwrite the destination directory, if it exists
--default-scaladoc-options
Aliases:
--default-scaladoc-opts
Control if Scala CLI should use default options for scaladoc, true by default. Use
--default-scaladoc-opts:false
to not include default options.
Export options
Available in commands:
export
--sbt
Sets the export format to SBT
--maven
Aliases:
--mvn
Sets the export format to Maven
--mill
Sets the export format to Mill
--json
Sets the export format to Json
--sbt-setting
Aliases:
--setting
--project
Aliases:
-p
Project name to be used on Mill build file
--sbt-version
Version of SBT to be used for the export (1.12.4 by default)
--mill-version
Version of Mill to be used for the export (1.1.3 by default)
--mvn-version
Version of Maven Compiler Plugin to be used for the export (3.8.1 by default)
--mvn-scala-version
Version of Maven Scala Plugin to be used for the export (4.9.1 by default)
--mvn-exec-plugin-version
Version of Maven Exec Plugin to be used for the export (3.3.0 by default)
--mvn-app-artifact-id
ArtifactId to be used for the maven export
--mvn-app-group-id
GroupId to be used for the maven export
--mvn-app-version
Version to be used for the maven export
--output
Aliases:
-o
Fix options
Available in commands:
fix
--check
Fail the invocation if rewrites are needed
--enable-scalafix
Aliases:
--scalafix
Enable running Scalafix rules (enabled by default)
--enable-built-in-rules
Aliases:
--built-in
,
--built-in-rules
,
--enable-built-in
Enable running built-in rules (enabled by default)
Fmt options
Available in commands:
fmt
,
format
,
scalafmt
--check
Check if sources are well formatted
--respect-project-filters
Use project filters defined in the configuration. Turned on by default, use
--respect-project-filters:false
to disable it.
--save-scalafmt-conf
Saves .scalafmt.conf file if it was created or overwritten
--os-arch-suffix
[Internal]
--scalafmt-tag
[Internal]
--scalafmt-github-org-name
[Internal]
--scalafmt-extension
[Internal]
--scalafmt-launcher
[Internal]
--scalafmt-arg
Aliases:
-F
Pass an argument to scalafmt.
--scalafmt-conf
Aliases:
--scalafmt-config
Custom path to the scalafmt configuration file.
--scalafmt-conf-str
Aliases:
--scalafmt-conf-snippet
,
--scalafmt-config-str
Pass configuration as a string.
--scalafmt-dialect
Aliases:
--dialect
Pass a global dialect for scalafmt. This overrides whatever value is configured in the .scalafmt.conf file or inferred based on Scala version used.
--scalafmt-version
Aliases:
--fmt-version
Pass scalafmt version before running it (3.10.7 by default). If passed, this overrides whatever value is configured in the .scalafmt.conf file.
Global suppress warning options
Available in commands:
add-path
,
bloop
,
bloop exit
,
bloop output
,
bloop start
,
bsp
,
clean
,
compile
,
config
,
default-file
,
dependency-update
,
directories
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
help
,
install completions
,
install-completions
,
install-home
,
new
,
package
,
pgp pull
,
pgp push
,
publish
,
publish local
,
publish setup
,
repl
,
console
,
run
,
github secret create
,
gh secret create
,
github secret list
,
gh secret list
,
setup-ide
,
shebang
,
test
,
uninstall
,
uninstall completions
,
uninstall-completions
,
update
,
version
--suppress-experimental-feature-warning
Aliases:
--suppress-experimental-warning
Suppress warnings about using experimental features
--suppress-deprecated-feature-warning
Aliases:
--suppress-deprecated-feature-warnings
,
--suppress-deprecated-warning
,
--suppress-deprecated-warnings
Suppress warnings about using deprecated features
Help options
Available in commands:
add-path
,
bloop
,
bloop exit
,
bloop output
,
bloop start
,
bsp
,
clean
,
compile
,
config
,
default-file
,
dependency-update
,
directories
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
help
,
install completions
,
install-completions
,
install-home
,
new
,
package
,
pgp create
,
pgp key-id
,
pgp pull
,
pgp push
,
pgp sign
,
pgp verify
,
publish
,
publish local
,
publish setup
,
repl
,
console
,
run
,
github secret create
,
gh secret create
,
github secret list
,
gh secret list
,
setup-ide
,
shebang
,
test
,
uninstall
,
uninstall completions
,
uninstall-completions
,
update
,
version
--usage
Print usage and exit
--help
Aliases:
-h
,
-help
Print help message and exit
--help-full
Aliases:
--full-help
,
-full-help
,
-help-full
Print help message, including hidden options, and exit
Help group options
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--help-envs
Aliases:
--env-help
,
--envs-help
,
--help-env
Show environment variable help
--help-js
Show options for ScalaJS
--help-native
Show options for ScalaNative
--help-scaladoc
Aliases:
--doc-help
,
--help-doc
,
--scaladoc-help
Show options for Scaladoc
--help-repl
Aliases:
--repl-help
Show options for Scala REPL
--help-scalafmt
Aliases:
--fmt-help
,
--help-fmt
,
--scalafmt-help
Show options for Scalafmt
Install completions options
Available in commands:
install completions
,
install-completions
--format
Aliases:
--shell
Name of the shell, either zsh or bash
--rc-file
Path to
*rc
file, defaults to
.bashrc
or
.zshrc
depending on shell
--output
Aliases:
-o
Completions output directory
[Internal]
Custom banner in comment placed in rc file
--name
[Internal]
Custom completions name
--env
Print completions to stdout
Java options
Available in commands:
package
,
repl
,
console
,
run
,
shebang
,
test
--java-opt
Aliases:
-J
Set Java options, such as
-Xmx1g
Java prop options
Available in commands:
package
,
repl
,
console
,
run
,
shebang
,
test
--java-prop-option
Aliases:
--java-prop
Add java properties. Note that options equal
-Dproperty=value
are assumed to be java properties and don't require to be passed after
--java-prop
.
Jvm options
Available in commands:
bloop
,
bloop start
,
bsp
,
compile
,
config
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
pgp push
,
publish
,
publish local
,
publish setup
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--java-home
Set the Java home directory
--jvm
Aliases:
-j
Use a specific JVM, such as
14
,
temurin:11
, or
graalvm:21
, or
system
. scala-cli uses
coursier
to fetch JVMs, so you can use
cs java --available
to list the available JVMs.
--jvm-index
[Internal]
JVM index URL
--jvm-index-os
[Internal]
Operating system to use when looking up in the JVM index
--jvm-index-arch
[Internal]
CPU architecture to use when looking up in the JVM index
--javac-plugin
[Internal]
Javac plugin dependencies or files
--javac-option
Aliases:
--javac-opt
[Internal]
Javac options
--bsp-debug-port
[Internal]
Port for BSP debugging
Logging options
Available in commands:
add-path
,
bloop
,
bloop exit
,
bloop output
,
bloop start
,
bsp
,
clean
,
compile
,
config
,
default-file
,
dependency-update
,
directories
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
help
,
install completions
,
install-completions
,
install-home
,
new
,
package
,
pgp pull
,
pgp push
,
publish
,
publish local
,
publish setup
,
repl
,
console
,
run
,
github secret create
,
gh secret create
,
github secret list
,
gh secret list
,
setup-ide
,
shebang
,
test
,
uninstall
,
uninstall completions
,
uninstall-completions
,
update
,
version
--quiet
Aliases:
-q
Decrease logging verbosity
--progress
Use progress bars
Main class options
Available in commands:
export
,
package
,
publish
,
publish local
,
run
,
shebang
--main-class
Aliases:
-M
Specify which main class to run
--main-class-ls
Aliases:
--list-main-class
,
--list-main-classes
,
--list-main-method
,
--list-main-methods
,
--main-class-list
,
--main-method-list
,
--main-method-ls
List main classes available in the current context
Markdown options
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--enable-markdown
Aliases:
--markdown
,
--md
Enable markdown support.
Package options
Available in commands:
package
--output
Aliases:
-o
Set the destination path
--force
Aliases:
-f
Overwrite the destination file, if it exists
--library
Generate a library JAR rather than an executable JAR
--with-sources
Aliases:
--jar-sources
, [deprecated]
--sources
,
--sources-jar
, [deprecated]
--src
Generate a source JAR rather than an executable JAR
--doc
Aliases:
--javadoc
,
--scaladoc
Generate a scaladoc JAR rather than an executable JAR
--assembly
Generate an assembly JAR
--preamble
For assembly JAR, whether to add a bash / bat preamble
--main-class-in-manifest
[Internal]
For assembly JAR, whether to specify a main class in the JAR manifest
--spark
[Internal]
Generate an assembly JAR for Spark (assembly that doesn't contain Spark, nor any of its dependencies)
--standalone
Package standalone JARs
--deb
Build Debian package, available only on Linux
--dmg
Build dmg package, available only on macOS
--rpm
Build rpm package, available only on Linux
--msi
Build msi package, available only on Windows
--pkg
Build pkg package, available only on macOS
--docker
Build Docker image
--provided
[Internal]
Exclude modules
and their transitive dependencies
from the JAR to be packaged
--default-scaladoc-options
Aliases:
--default-scaladoc-opts
Use default scaladoc options
--native-image
Aliases:
--graal
Build GraalVM native image
Packager options
Available in commands:
package
--version
Set the version of the generated package
--logo-path
Path to application logo in PNG format, it will be used to generate icon and banner/dialog in msi installer
--launcher-app
Set launcher app name, which will be linked to the PATH
--description
--maintainer
Aliases:
-m
This should contain names and email addresses of co-maintainers of the package
--debian-conflicts
The list of Debian package that this package is not compatible with
--debian-dependencies
The list of Debian packages that this package depends on
--deb-architecture
Architectures that are supported by the repository (default: all)
--priority
This field represents how important it is that the user have the package installed
--section
This field specifies an application area into which the package has been classified
--identifier
CF Bundle Identifier
--license
Licenses that are supported by the repository (list of licenses:
https://spdx.org/licenses/
)
--release
The number of times this version of the software was released (default: 1)
--rpm-architecture
Architectures that are supported by the repository (default: noarch)
--license-path
Path to the license file
--product-name
Name of product (default: Scala packager)
--exit-dialog
Text that will be displayed on the exit dialog
--suppress-validation
Suppress Wix ICE validation (required for users that are neither interactive, not local administrators)
Path to extra WIX configuration content
--is64-bits
Aliases:
--64
Whether a 64-bit executable is being packaged
--installer-version
WIX installer version
--wix-upgrade-code-guid
The GUID to identify that the windows package can be upgraded.
--docker-from
Building the container from base image
--docker-image-registry
The image registry; if empty, it will use the default registry
--docker-image-repository
The image repository
--docker-image-tag
The image tag; the default tag is
latest
--docker-cmd
Allows to override the executable used to run the application in docker, otherwise it defaults to sh for the JVM platform and node for the JS platform
Extra directories to be added to the docker image
--graalvm-java-version
GraalVM Java major version to use to build GraalVM native images (17 by default)
--graalvm-version
GraalVM version to use to build GraalVM native images (17.0.9 by default)
--graalvm-jvm-id
JVM id of GraalVM distribution to build GraalVM native images (like "graalvm-java17:22.0.0")
--graalvm-args
Pass args to GraalVM
Pgp push pull options
Available in commands:
pgp pull
,
pgp push
,
publish setup
--key-server
Key server to push / pull keys from
Power options
Available in commands:
add-path
,
bloop
,
bloop exit
,
bloop output
,
bloop start
,
bsp
,
clean
,
compile
,
config
,
default-file
,
dependency-update
,
directories
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
help
,
install completions
,
install-completions
,
install-home
,
new
,
package
,
pgp pull
,
pgp push
,
publish
,
publish local
,
publish setup
,
repl
,
console
,
run
,
github secret create
,
gh secret create
,
github secret list
,
gh secret list
,
setup-ide
,
shebang
,
test
,
uninstall
,
uninstall completions
,
uninstall-completions
,
update
,
version
--power
Allows to use restricted & experimental features
Publish options
Available in commands:
publish
,
publish local
--working-dir
[Internal]
Directory where temporary files for publishing should be written
--scala-version-suffix
[Internal]
Scala version suffix to append to the module name, like "_2.13" or "_3"
--scala-platform-suffix
[Internal]
Scala platform suffix to append to the module name, like "_sjs1" or "_native0.4"
--with-sources
Aliases:
--jar-sources
, [deprecated]
--sources
,
--sources-jar
Whether to build and publish source JARs
--doc
Aliases:
--javadoc
,
--scaladoc
Whether to build and publish doc JARs
--gpg-key
Aliases:
-K
ID of the GPG key to use to sign artifacts
--signer
Method to use to sign artifacts
--gpg-option
Aliases:
-G
,
--gpg-opt
gpg command-line options
--ivy2-home
Set Ivy 2 home directory
--checksum
[Internal]
--dummy
Proceed as if publishing, but do not upload / write artifacts to the remote repository
--ivy2-local-like
[Internal]
--parallel-upload
[Internal]
Publish local options
Available in commands:
publish local
--m2
Aliases:
--maven-local
Publish to the local Maven repository (defaults to ~/.m2/repository) instead of Ivy2 local
--m2-home
Set the local Maven repository path (defaults to ~/.m2/repository)
Publish params options
Available in commands:
publish
,
publish local
,
publish setup
--organization
Organization to publish artifacts under
--name
Name to publish artifacts as
--module-name
Final name to publish artifacts as, including Scala version and platform suffixes if any
--url
URL to put in publishing metadata
--license
License to put in publishing metadata
--vcs
VCS information to put in publishing metadata
--description
Description to put in publishing metadata
--developer
Developer(s) to add in publishing metadata, like "alex|Alex|
https://alex.info
" or "alex|Alex|
https://alex.info|alex@alex.me
"
--secret-key
Secret key to use to sign artifacts with Bouncy Castle
--secret-key-password
Aliases:
--secret-key-pass
Password of secret key to use to sign artifacts with Bouncy Castle
--ci
Use or setup publish parameters meant to be used on continuous integration
Publish repository options
Available in commands:
publish
,
publish setup
--publish-repository
Aliases:
-R
,
--publish-repo
Repository to publish to
--user
User to use with publishing repository
--password
Password to use with publishing repository
--realm
Realm to use when passing credentials to publishing repository
Publish setup options
Available in commands:
publish setup
--public-key
Public key to use to verify artifacts (to be uploaded to a key server)
--check
Check if some options for publishing are missing, and exit with non-zero return code if that's the case
--token
GitHub token to use to upload secrets to GitHub - password encoded
--random-secret-key
Generate a random key pair for publishing, with a secret key protected by a random password
--random-secret-key-mail
When generating a random key pair, the mail to associate to it
--checks
The option groups to check - can be "all", or a comma-separated list of "core", "signing", "repo", "extra"
--check-workflow
Whether to check if a GitHub workflow already exists (one for publishing is written if none is found)
--check-gitignore
Whether to check if a .gitignore file already exists (one is written if none is found)
--dummy
Dummy mode - don't upload any secret to GitHub
Python options
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--python-setup
Set Java options so that Python can be loaded
--python
Aliases:
--py
Enable Python support via ScalaPy
--scala-py-version
Aliases:
--scalapy-version
Set ScalaPy version (0.5.3 by default)
Repl options
Available in commands:
repl
,
console
--ammonite
Aliases:
-A
,
--amm
Use Ammonite (instead of the default Scala REPL)
--ammonite-version
Aliases:
--ammonite-ver
Set the Ammonite version (3.0.8 by default)
--ammonite-arg
Aliases:
-a
[Internal]
Provide arguments for ammonite repl
--repl-dry-run
[Internal]
Don't actually run the REPL, just fetch it
Run options
Available in commands:
run
,
shebang
--spark-submit
Aliases:
--spark
[Internal]
Run as a Spark job, using the spark-submit command
--submit-argument
Aliases:
--submit-arg
[Internal]
Spark-submit arguments
--standalone-spark
Aliases:
--spark-standalone
Run as a Spark job, using a vanilla Spark distribution downloaded by Scala CLI
--hadoop-jar
Aliases:
--hadoop
Run as a Hadoop job, using the "hadoop jar" command
--command
Print the command that would have been run (one argument per line), rather than running it
--scratch-dir
Temporary / working directory where to write generated launchers
--use-manifest
[Internal]
Run Java commands using a manifest-based class path (shortens command length)
Scala.js options
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--js
Enable Scala.js. To show more options for Scala.js pass
--help-js
--js-version
The Scala.js version (1.20.2 by default).
--js-mode
The Scala.js mode, for
fastLinkJS
use one of [
dev
,
fastLinkJS
or
fast
], for
fullLinkJS
use one of [
release
,
fullLinkJS
,
full
]
--js-no-opt
[Internal]
Disable optimalisation for Scala.js, overrides
--js-mode
--js-module-kind
The Scala.js module kind: commonjs/common, esmodule/es, nomodule/none
--js-check-ir
--js-emit-source-maps
Emit source maps
--js-source-maps-path
Set the destination path of source maps
--js-es-module-import-map
A file relative to the root directory containing import maps for ES module imports
--js-dom
Enable jsdom
--js-emit-wasm
Emit WASM
A header that will be added at the top of generated .js files
--js-allow-big-ints-for-longs
Primitive Longs
may
be compiled as primitive JavaScript bigints
--js-avoid-classes
Avoid class'es when using functions and prototypes has the same observable semantics.
--js-avoid-lets-and-consts
Avoid lets and consts when using vars has the same observable semantics.
--js-module-split-style
The Scala.js module split style: fewestmodules, smallestmodules, smallmodulesfor
--js-small-module-for-package
Create as many small modules as possible for the classes in the passed packages and their subpackages.
--js-es-version
The Scala.js ECMA Script version: es5_1, es2015, es2016, es2017, es2018, es2019, es2020, es2021
--js-linker-path
[Internal]
Path to the Scala.js linker
--js-cli-version
[Internal]
Scala.js CLI version to use for linking (1.20.2 by default).
--js-cli-java-arg
[Internal]
Scala.js CLI Java options
--js-cli-on-jvm
[Internal]
Whether to run the Scala.js CLI on the JVM or using a native executable
Scala Native options
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--native
Enable Scala Native. To show more options for Scala Native pass
--help-native
--native-version
Set the Scala Native version (0.5.10 by default).
--native-mode
Set Scala Native compilation mode (debug by default): debug, release-fast, release-size, release-full
--native-lto
Link-time optimisation mode (none by default): none, full, thin
--native-gc
Set the Scala Native garbage collector (immix by default): immix, commix, boehm, none
--native-clang
Path to the Clang command
--native-clangpp
Path to the Clang++ command
--native-linking
Extra options passed to
clang
verbatim during linking
--native-linking-defaults
[Internal]
Use default linking settings
--native-compile
List of compile options
--native-c-compile
List of compile options (C files only)
--native-cpp-compile
List of compile options (C++ files only)
--native-compile-defaults
[Internal]
Use default compile options
--native-target
Build target type
--embed-resources
Embed resources into the Scala Native binary (can be read with the Java resources API)
--native-multithreading
Enable/disable Scala Native multithreading support
Scalac options
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--args-file
File with scalac options.
--scalac-option
Aliases:
-O
,
--scala-opt
,
--scala-option
Add a
scalac
option. Note that options starting with
-g
,
-language
,
-opt
,
-P
,
-target
,
-V
,
-W
,
-X
, and
-Y
are assumed to be Scala compiler options and don't require to be passed after
-O
or
--scalac-option
.
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--scalac-help
Aliases:
--help-scalac
Show help for scalac. This is an alias for --scalac-option -help
--scalac-verbose
Aliases:
--verbose-scalac
Turn verbosity on for scalac. This is an alias for --scalac-option -verbose
Scalafix options
Available in commands:
fix
--scalafix-conf
Custom path to the scalafix configuration file.
--scalafix-arg
Pass extra argument(s) to scalafix.
--scalafix-rules
Run scalafix rule(s) explicitly, overriding the configuration file default.
Scope options
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--test
Aliases:
--test-scope
,
--with-test
,
--with-test-scope
Include test scope
Secret options
Available in commands:
github secret create
,
gh secret create
,
github secret list
,
gh secret list
--token
--repository
Aliases:
--repo
Secret create options
Available in commands:
github secret create
,
gh secret create
--public-key
Aliases:
--pub-key
--dummy
Aliases:
-n
--print-request
[Internal]
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--scala-version
Aliases:
-S
,
--scala
Set the Scala version (3.8.2 by default)
--scala-binary-version
Aliases:
-B
,
--scala-bin
,
--scala-binary
[Internal]
Set the Scala binary version
Aliases:
--class
,
--class-path
,
--classes
,
-classpath
,
--classpath
,
-cp
,
--extra-class
,
--extra-class-path
,
--extra-classes
,
--extra-jar
,
--jar
,
--jars
Add extra JARs and compiled classes to the class path
Aliases:
--compile-only-jar
,
--compile-only-jars
,
--extra-compile-only-jar
Add extra JARs in the compilaion class path. Mainly using to run code in managed environments like Spark not to include certain depenencies on runtime ClassPath.
Aliases:
--extra-source-jar
,
--source-jar
,
--source-jars
Add extra source JARs
--resource-dirs
Aliases:
--resource-dir
Add a resource directory
--as-jar
[Internal]
Put project in class paths as a JAR rather than as a byte code directory
--platform
Specify platform
--scala-library
[Internal]
--with-compiler
Aliases:
-with-compiler
,
--with-scala-compiler
Allows to include the Scala compiler artifacts on the classpath.
--java
[Internal]
Do not add dependency to Scala Standard library. This is useful, when Scala CLI works with pure Java projects.
--runner
[Internal]
Should include Scala CLI runner on the runtime ClassPath. Runner is added by default for application running on JVM using standard Scala versions. Runner is used to make stack traces more readable in case of application failure.
--strict-bloop-json-check
[Internal]
--compilation-output
Aliases:
--compile-out
,
--compile-output
,
-d
,
--destination
,
--output-directory
Copy compilation results to output directory using either relative or absolute path
--with-toolkit
Aliases:
--toolkit
Add toolkit to classPath (not supported in Scala 2.12), 'default' version for Scala toolkit: 0.8.0, 'default' version for typelevel toolkit: 0.1.29
--exclude
Exclude sources
--object-wrapper
Force object wrapper for scripts
Snippet options
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--script-snippet
Allows to execute a passed string as a Scala script
--execute-script
Aliases:
-e
,
--execute-sc
,
--execute-scala-script
[Internal]
A synonym to --script-snippet, which defaults the sub-command to
run
when no sub-command is passed explicitly
--scala-snippet
Allows to execute a passed string as Scala code
--execute-scala
[Internal]
A synonym to --scala-snippet, which defaults the sub-command to
run
when no sub-command is passed explicitly
--java-snippet
Allows to execute a passed string as Java code
--execute-java
A synonym to --scala-snippet, which defaults the sub-command to
run
when no sub-command is passed explicitly
--markdown-snippet
Aliases:
--md-snippet
Allows to execute a passed string as Markdown code
--execute-markdown
Aliases:
--execute-md
[Internal]
A synonym to --markdown-snippet, which defaults the sub-command to
run
when no sub-command is passed explicitly
Source generator options
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--use-build-info
Aliases:
--build-info
Generate BuildInfo for project
Suppress warning options
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--suppress-directives-in-multiple-files-warning
Aliases:
--suppress-warning-directives-in-multiple-files
Suppress warnings about using directives in multiple files
--suppress-outdated-dependency-warning
Suppress warnings about outdated dependencies in project
Test options
Available in commands:
test
--test-frameworks
Aliases:
--test-framework
Names of the test frameworks' runner classes to use while running tests.
Skips framework lookup and only runs passed frameworks.
--require-tests
Fail if no test suites were run
--test-only
Specify a glob pattern to filter the tests suite to be run.
Uninstall options
Available in commands:
uninstall
--force
Aliases:
-f
Force scala-cli uninstall
--skip-cache
[Internal]
Don't clear Scala CLI cache
--binary-name
[Internal]
Binary name
--bin-dir
[Internal]
Binary directory
Uninstall completions options
Available in commands:
uninstall
,
uninstall completions
,
uninstall-completions
--rc-file
Path to
*rc
file, defaults to
.bashrc
or
.zshrc
depending on shell
[Internal]
Custom banner in comment placed in rc file
--name
[Internal]
Custom completions name
Update options
Available in commands:
update
--binary-name
[Internal]
Binary name
--bin-dir
[Internal]
Binary directory
--force
Aliases:
-f
Force update Scala CLI if it is outdated
--is-internal-run
[Internal]
--gh-token
[Internal]
A github token used to access GitHub. Not needed in most cases.
Verbosity options
Available in commands:
add-path
,
bloop
,
bloop exit
,
bloop output
,
bloop start
,
bsp
,
clean
,
compile
,
config
,
default-file
,
dependency-update
,
directories
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
help
,
install completions
,
install-completions
,
install-home
,
new
,
package
,
pgp pull
,
pgp push
,
publish
,
publish local
,
publish setup
,
repl
,
console
,
run
,
github secret create
,
gh secret create
,
github secret list
,
gh secret list
,
setup-ide
,
shebang
,
test
,
uninstall
,
uninstall completions
,
uninstall-completions
,
update
,
version
--verbose
Aliases:
-v
,
-verbose
Increase verbosity (can be specified multiple times)
--interactive
Aliases:
-i
Interactive mode
--actions
Enable actionable diagnostics
Version options
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
publish setup
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
,
version
--compute-version
Method used to compute the project version
--project-version
Set the project version
--cli-version
Aliases:
--cli
Show plain Scala CLI version only
--scala-version
Aliases:
--scala
Show plain Scala version only
--gh-token
[Internal]
A github token used to access GitHub. Not needed in most cases.
--offline
Don't check for the newest available Scala CLI version upstream
Watch options
Available in commands:
compile
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
shebang
,
test
--watch
Aliases:
-w
Run the application in the background, automatically wake the thread and re-run if sources have been changed
--restart
Aliases:
--revolver
Run the application in the background, automatically kill the process and restart if sources have been changed
--watching
Aliases:
--watching-path
Watch additional paths for changes (used together with --watch or --restart)
Internal options
Add path options
Available in commands:
add-path
--title
[Internal]
Bloop options
Available in commands:
bloop
--working-directory
Aliases:
--dir
,
--working-dir
[Internal]
Bloop start options
Available in commands:
bloop start
--force
Aliases:
-f
[Internal]
Bsp options
Available in commands:
bsp
--json-options
[Internal]
Command-line options JSON file
--json-launcher-options
[Internal]
Command-line launcher options JSON file
--envs
Aliases:
--envs-file
[Internal]
Command-line options environment variables file
Bsp file options
Available in commands:
clean
,
setup-ide
--bsp-directory
Aliases:
--bsp-dir
[Internal]
Custom BSP configuration location
--bsp-name
Aliases:
--name
[Internal]
Name of BSP
Default file options
Available in commands:
default-file
--write
[Internal]
Write result to files rather than to stdout
--list
[Internal]
List available default files
--list-ids
[Internal]
List available default file ids
--force
Aliases:
-f
[Internal]
Force overwriting destination files
Input options
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
publish setup
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--default-forbidden-directories
[Internal]
--forbid
[Internal]
Install home options
Available in commands:
install-home
--scala-cli-binary-path
[Internal]
--force
Aliases:
-f
[Internal]
Overwrite if it exists
--binary-name
[Internal]
Binary name
--env
[Internal]
Print the update to
env
variable
--bin-dir
[Internal]
Binary directory
Pgp create options
Available in commands:
pgp create
--email
[Internal]
--password
[Internal]
--dest
[Internal]
--pub-dest
[Internal]
--secret-dest
[Internal]
--verbose
[Internal]
--quiet
[Internal]
Pgp key id options
Available in commands:
pgp key-id
--fingerprint
[Internal]
--verbose
Aliases:
-v
[Internal]
Pgp pull options
Available in commands:
pgp pull
--allow-empty
[Internal]
Whether to exit with code 0 if no key is passed
Pgp push options
Available in commands:
pgp push
--force
Aliases:
-f
[Internal]
Try to push the key even if Scala CLI thinks it's not a public key
--allow-empty
[Internal]
Whether to exit with code 0 if no key is passed
Pgp scala signing options
Available in commands:
config
,
pgp push
,
publish
,
publish local
,
publish setup
--signing-cli-version
[Internal]
scala-cli-signing version when running externally (0.2.13 by default)
--signing-cli-java-arg
[Internal]
Pass arguments to the Java command when running scala-cli-singing externally on JVM
--force-signing-externally
[Internal]
When running Scala CLI on the JVM, force running scala-cli-singing externally
--force-jvm-signing-cli
[Internal]
When running Scala CLI on the JVM, force running scala-cli-singing using a native launcher or a JVM launcher
Pgp sign options
Available in commands:
pgp sign
--password
[Internal]
--secret-key
[Internal]
--force
Aliases:
-f
[Internal]
--stdout
[Internal]
Pgp verify options
Available in commands:
pgp verify
--key
[Internal]
Publish connection options
Available in commands:
publish
--connection-timeout-seconds
[Internal]
Connection timeout, in seconds.
--connection-timeout-retries
[Internal]
How many times to retry establishing the connection on timeout.
--response-timeout-seconds
[Internal]
Waiting for response timeout, in seconds.
--staging-repo-retries
[Internal]
How many times to retry the staging repository operations on failure.
--staging-repo-wait-time-milis
[Internal]
Time to wait between staging repository operation retries, in milliseconds.
Semantic db options
Available in commands:
bsp
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--semantic-db
Aliases:
--semanticdb
[Internal]
Generate SemanticDBs
--semantic-db-target-root
Aliases:
--semanticdb-target-root
,
--semanticdb-targetroot
[Internal]
SemanticDB target root (default to the compiled classes destination directory)
--semantic-db-source-root
Aliases:
--semanticdb-source-root
,
--semanticdb-sourceroot
[Internal]
SemanticDB source root (default to the project root directory)
Setup IDE options
Available in commands:
setup-ide
--charset
[Internal]
Workspace options
Available in commands:
bsp
,
clean
,
compile
,
dependency-update
,
doc
,
export
,
fix
,
fmt
,
format
,
scalafmt
,
package
,
publish
,
publish local
,
publish setup
,
repl
,
console
,
run
,
setup-ide
,
shebang
,
test
--workspace
[Internal]
Directory where .scala-build is written |
| Markdown | [Skip to main content](https://scala-cli.virtuslab.org/docs/reference/cli-options/#__docusaurus_skipToContent_fallback)
[**Scala CLI**](https://scala-cli.virtuslab.org/)
[Installation](https://scala-cli.virtuslab.org/install)
[Use cases](https://scala-cli.virtuslab.org/)
- [Education](https://scala-cli.virtuslab.org/education)
- [Scripting](https://scala-cli.virtuslab.org/scripting)
- [prototyping, experimenting, reproducing](https://scala-cli.virtuslab.org/prototyping)
- [Single-module projects](https://scala-cli.virtuslab.org/projects)
[Documentation](https://scala-cli.virtuslab.org/docs/overview)[Commands](https://scala-cli.virtuslab.org/docs/commands/basics)[Guides](https://scala-cli.virtuslab.org/docs/guides/intro)[Cookbook](https://scala-cli.virtuslab.org/docs/cookbooks/intro)
[by](https://virtuslab.com/)
[GitHub](https://github.com/Virtuslab/scala-cli)
`ctrl``K`
- [Overview](https://scala-cli.virtuslab.org/docs/overview)
- [Getting started](https://scala-cli.virtuslab.org/docs/getting_started)
- [Commands](https://scala-cli.virtuslab.org/docs/reference/cli-options/)
- [Guides](https://scala-cli.virtuslab.org/docs/reference/cli-options/)
- [Cookbook](https://scala-cli.virtuslab.org/docs/reference/cli-options/)
- [Reference](https://scala-cli.virtuslab.org/docs/reference/cli-options/)
- [Command-line options](https://scala-cli.virtuslab.org/docs/reference/cli-options)
- [Directives](https://scala-cli.virtuslab.org/docs/reference/directives)
- [Commands](https://scala-cli.virtuslab.org/docs/reference/commands)
- [Dependency format](https://scala-cli.virtuslab.org/docs/reference/dependency)
- [Project root directory](https://scala-cli.virtuslab.org/docs/reference/root-dir)
- [BuildInfo](https://scala-cli.virtuslab.org/docs/reference/build-info)
- [Environment variables](https://scala-cli.virtuslab.org/docs/reference/env-vars)
- [Supported scala versions](https://scala-cli.virtuslab.org/docs/reference/scala-versions)
- [Password options ⚡️](https://scala-cli.virtuslab.org/docs/reference/password-options)
- [Scala CLI as scala](https://scala-cli.virtuslab.org/docs/reference/scala-command/)
- [Under the hood](https://scala-cli.virtuslab.org/docs/under-the-hood)
- [Release notes](https://scala-cli.virtuslab.org/docs/release_notes)
- Reference
- Command-line options
On this page
# Command-line options
This is a summary of options that are available for each subcommand of the `scala-cli` command.
## Scalac options forwarding[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalac-options-forwarding "Direct link to Scalac options forwarding")
All options that start with:
- `-g`
- `-language`
- `-opt`
- `-P`
- `-target`
- `-V`
- `-W`
- `-X`
- `-Y`
are assumed to be Scala compiler options and will be propagated to Scala Compiler. This applies to all commands that uses compiler directly or indirectly.
## Scalac options that are directly supported in scala CLI (so can be provided as is, without any prefixes etc.):[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalac-options-that-are-directly-supported-in-scala-cli-so-can-be-provided-as-is-without-any-prefixes-etc "Direct link to Scalac options that are directly supported in scala CLI (so can be provided as is, without any prefixes etc.):")
- `-encoding`
- `-release`
- `-color`
- `-nowarn`
- `-feature`
- `-deprecation`
- `-indent`
- `-no-indent`
- `-unchecked`
- `-rewrite`
- `-old-syntax`
- `-new-syntax`
## Benchmarking options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#benchmarking-options "Direct link to Benchmarking options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--jmh`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jmh "Direct link to --jmh")
Run JMH benchmarks
### `--jmh-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jmh-version "Direct link to --jmh-version")
Set JMH version (default: 1.37)
## Compilation server options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#compilation-server-options "Direct link to Compilation server options")
Available in commands:
[`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop exit`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-exit), [`bloop output`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-output), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall)
### `--bloop-bsp-protocol`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-bsp-protocol "Direct link to --bloop-bsp-protocol")
\[Internal\] Protocol to use to open a BSP connection with Bloop
### `--bloop-bsp-socket`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-bsp-socket "Direct link to --bloop-bsp-socket")
\[Internal\] Socket file to use to open a BSP connection with Bloop
### `--bloop-host`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-host "Direct link to --bloop-host")
\[Internal\] Host the compilation server should bind to
### `--bloop-port`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-port "Direct link to --bloop-port")
\[Internal\] Port the compilation server should bind to (pass `-1` to pick a random port)
### `--bloop-daemon-dir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-daemon-dir "Direct link to --bloop-daemon-dir")
\[Internal\] Daemon directory of the Bloop daemon (directory with lock, pid, and socket files)
### `--bloop-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-version "Direct link to --bloop-version")
\[Internal\] If Bloop isn't already running, the version we should start
### `--bloop-bsp-timeout`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-bsp-timeout "Direct link to --bloop-bsp-timeout")
\[Internal\] Maximum duration to wait for the BSP connection to be opened
### `--bloop-bsp-check-period`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-bsp-check-period "Direct link to --bloop-bsp-check-period")
\[Internal\] Duration between checks of the BSP connection state
### `--bloop-startup-timeout`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-startup-timeout "Direct link to --bloop-startup-timeout")
\[Internal\] Maximum duration to wait for the compilation server to start up
### `--bloop-default-java-opts`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-default-java-opts "Direct link to --bloop-default-java-opts")
\[Internal\] Include default JVM options for Bloop
### `--bloop-java-opt`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-java-opt "Direct link to --bloop-java-opt")
\[Internal\] Pass java options to use by Bloop server
### `--bloop-global-options-file`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-global-options-file "Direct link to --bloop-global-options-file")
\[Internal\] Bloop global options file
### `--bloop-jvm`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-jvm "Direct link to --bloop-jvm")
\[Internal\] JVM to use to start Bloop (e.g. 'system\|17', 'temurin:21', …)
### `--bloop-working-dir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-working-dir "Direct link to --bloop-working-dir")
\[Internal\] Working directory for Bloop, if it needs to be started
### `--server`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--server "Direct link to --server")
Enable / disable usage of Bloop compilation server. Bloop is used by default so use `--server=false` to disable it. Disabling compilation server allows to test compilation in more controlled mannter (no caching or incremental compiler) but has a detrimental effect of performance.
## Compile options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#compile-options "Direct link to Compile options")
Available in commands:
[`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile)
### `--print-class-path`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--print-class-path "Direct link to --print-class-path")
Aliases: `-p`, `--print-classpath`
Print the resulting class path
## Config options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#config-options "Direct link to Config options")
Available in commands:
[`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config)
### `--dump`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dump "Direct link to --dump")
\[Internal\] Dump config DB as JSON
### `--create-pgp-key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--create-pgp-key "Direct link to --create-pgp-key")
Create PGP keychain in config
### `--pgp-password`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--pgp-password "Direct link to --pgp-password")
Aliases: `--passphrase`
A password used to encode the private PGP keychain
### `--email`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--email "Direct link to --email")
Email used to create the PGP keychains in config
### `--password-value`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--password-value "Direct link to --password-value")
When accessing config's content print the password value rather than how to get the password When saving an entry in config save the password value rather than how to get the password e.g. print/save the value of environment variable ENV\_VAR rather than "env:ENV\_VAR"
### `--unset`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--unset "Direct link to --unset")
Aliases: `--remove`
Remove an entry from config
### `--https-only`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--https-only "Direct link to --https-only")
For repository.credentials and publish.credentials, whether these credentials should be HTTPS only (default: true)
### `--match-host`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--match-host "Direct link to --match-host")
For repository.credentials, whether to use these credentials automatically based on the host
### `--optional`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--optional "Direct link to --optional")
For repository.credentials, whether to use these credentials are optional
### `--pass-on-redirect`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--pass-on-redirect "Direct link to --pass-on-redirect")
For repository.credentials, whether to use these credentials should be passed upon redirection
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force "Direct link to --force")
Aliases: `-f`
Force overwriting values for key
## Coursier options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#coursier-options "Direct link to Coursier options")
Available in commands:
[`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop exit`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-exit), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall)
### `--ttl`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ttl "Direct link to --ttl")
\[Internal\] Specify a TTL for changing dependencies, such as snapshots
### `--cache`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--cache "Direct link to --cache")
\[Internal\] Set the coursier cache location
### `--coursier-validate-checksums`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--coursier-validate-checksums "Direct link to --coursier-validate-checksums")
\[Internal\] Enable checksum validation of artifacts downloaded by coursier
### `--offline`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--offline "Direct link to --offline")
Disable using the network to download artifacts, use the local cache only
## Cross options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#cross-options "Direct link to Cross options")
Available in commands:
[`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--cross`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--cross "Direct link to --cross")
Run given command against all provided Scala versions and/or platforms
## Debug options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#debug-options "Direct link to Debug options")
Available in commands:
[`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--debug`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--debug "Direct link to --debug")
Turn debugging on
### `--debug-port`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--debug-port "Direct link to --debug-port")
Debug port (5005 by default)
### `--debug-mode`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--debug-mode "Direct link to --debug-mode")
Debug mode (attach by default)
## Dependency options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#dependency-options "Direct link to Dependency options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--dependency`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dependency "Direct link to --dependency")
Aliases: `--dep`
Add dependencies
### `--compile-only-dependency`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--compile-only-dependency "Direct link to --compile-only-dependency")
Aliases: `--compile-dep`, `--compile-lib`
Add compile-only dependencies
### `--repository`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--repository "Direct link to --repository")
Aliases: `-r`, `--repo`
Add repositories for dependency resolution.
Accepts predefined repositories supported by Coursier (like `sonatype:snapshots`, `ivy2Local` or `m2Local`) or a URL of the root of Maven repository
### `--compiler-plugin`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--compiler-plugin "Direct link to --compiler-plugin")
Aliases: `-P`, `--plugin`
Add compiler plugin dependencies
## Dependency update options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#dependency-update-options "Direct link to Dependency update options")
Available in commands:
[`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update)
### `--all`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--all "Direct link to --all")
Update all dependencies if a newer version was released
## Doc options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#doc-options "Direct link to Doc options")
Available in commands:
[`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc)
### `--output`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--output "Direct link to --output")
Aliases: `-o`
Set the destination path
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-1 "Direct link to --force-1")
Aliases: `-f`
Overwrite the destination directory, if it exists
### `--default-scaladoc-options`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--default-scaladoc-options "Direct link to --default-scaladoc-options")
Aliases: `--default-scaladoc-opts`
Control if Scala CLI should use default options for scaladoc, true by default. Use `--default-scaladoc-opts:false` to not include default options.
## Export options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#export-options "Direct link to Export options")
Available in commands:
[`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export)
### `--sbt`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--sbt "Direct link to --sbt")
Sets the export format to SBT
### `--maven`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--maven "Direct link to --maven")
Aliases: `--mvn`
Sets the export format to Maven
### `--mill`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mill "Direct link to --mill")
Sets the export format to Mill
### `--json`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--json "Direct link to --json")
Sets the export format to Json
### `--sbt-setting`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--sbt-setting "Direct link to --sbt-setting")
Aliases: `--setting`
### `--project`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--project "Direct link to --project")
Aliases: `-p`
Project name to be used on Mill build file
### `--sbt-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--sbt-version "Direct link to --sbt-version")
Version of SBT to be used for the export (1.12.4 by default)
### `--mill-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mill-version "Direct link to --mill-version")
Version of Mill to be used for the export (1.1.3 by default)
### `--mvn-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-version "Direct link to --mvn-version")
Version of Maven Compiler Plugin to be used for the export (3.8.1 by default)
### `--mvn-scala-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-scala-version "Direct link to --mvn-scala-version")
Version of Maven Scala Plugin to be used for the export (4.9.1 by default)
### `--mvn-exec-plugin-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-exec-plugin-version "Direct link to --mvn-exec-plugin-version")
Version of Maven Exec Plugin to be used for the export (3.3.0 by default)
### `--mvn-app-artifact-id`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-app-artifact-id "Direct link to --mvn-app-artifact-id")
ArtifactId to be used for the maven export
### `--mvn-app-group-id`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-app-group-id "Direct link to --mvn-app-group-id")
GroupId to be used for the maven export
### `--mvn-app-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-app-version "Direct link to --mvn-app-version")
Version to be used for the maven export
### `--output`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--output-1 "Direct link to --output-1")
Aliases: `-o`
## Fix options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#fix-options "Direct link to Fix options")
Available in commands:
[`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix)
### `--check`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--check "Direct link to --check")
Fail the invocation if rewrites are needed
### `--enable-scalafix`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--enable-scalafix "Direct link to --enable-scalafix")
Aliases: `--scalafix`
Enable running Scalafix rules (enabled by default)
### `--enable-built-in-rules`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--enable-built-in-rules "Direct link to --enable-built-in-rules")
Aliases: `--built-in`, `--built-in-rules`, `--enable-built-in`
Enable running built-in rules (enabled by default)
## Fmt options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#fmt-options "Direct link to Fmt options")
Available in commands:
[`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt)
### `--check`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--check-1 "Direct link to --check-1")
Check if sources are well formatted
### `--respect-project-filters`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--respect-project-filters "Direct link to --respect-project-filters")
Use project filters defined in the configuration. Turned on by default, use `--respect-project-filters:false` to disable it.
### `--save-scalafmt-conf`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--save-scalafmt-conf "Direct link to --save-scalafmt-conf")
Saves .scalafmt.conf file if it was created or overwritten
### `--os-arch-suffix`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--os-arch-suffix "Direct link to --os-arch-suffix")
\[Internal\]
### `--scalafmt-tag`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-tag "Direct link to --scalafmt-tag")
\[Internal\]
### `--scalafmt-github-org-name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-github-org-name "Direct link to --scalafmt-github-org-name")
\[Internal\]
### `--scalafmt-extension`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-extension "Direct link to --scalafmt-extension")
\[Internal\]
### `--scalafmt-launcher`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-launcher "Direct link to --scalafmt-launcher")
\[Internal\]
### `--scalafmt-arg`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-arg "Direct link to --scalafmt-arg")
Aliases: `-F`
Pass an argument to scalafmt.
### `--scalafmt-conf`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-conf "Direct link to --scalafmt-conf")
Aliases: `--scalafmt-config`
Custom path to the scalafmt configuration file.
### `--scalafmt-conf-str`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-conf-str "Direct link to --scalafmt-conf-str")
Aliases: `--scalafmt-conf-snippet`, `--scalafmt-config-str`
Pass configuration as a string.
### `--scalafmt-dialect`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-dialect "Direct link to --scalafmt-dialect")
Aliases: `--dialect`
Pass a global dialect for scalafmt. This overrides whatever value is configured in the .scalafmt.conf file or inferred based on Scala version used.
### `--scalafmt-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-version "Direct link to --scalafmt-version")
Aliases: `--fmt-version`
Pass scalafmt version before running it (3.10.7 by default). If passed, this overrides whatever value is configured in the .scalafmt.conf file.
## Global suppress warning options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#global-suppress-warning-options "Direct link to Global suppress warning options")
Available in commands:
[`add-path`](https://scala-cli.virtuslab.org/docs/reference/commands#add-path), [`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop exit`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-exit), [`bloop output`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-output), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`clean`](https://scala-cli.virtuslab.org/docs/reference/commands#clean), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`default-file`](https://scala-cli.virtuslab.org/docs/reference/commands#default-file), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`directories`](https://scala-cli.virtuslab.org/docs/reference/commands#directories), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`help`](https://scala-cli.virtuslab.org/docs/reference/commands#help), [`install completions` , `install-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#install-completions), [`install-home`](https://scala-cli.virtuslab.org/docs/reference/commands#install-home), [`new`](https://scala-cli.virtuslab.org/docs/reference/commands#new), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp pull`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-pull), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create), [`github secret list` , `gh secret list`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-list), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall), [`uninstall completions` , `uninstall-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall-completions), [`update`](https://scala-cli.virtuslab.org/docs/reference/commands#update), [`version`](https://scala-cli.virtuslab.org/docs/reference/commands#version)
### `--suppress-experimental-feature-warning`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--suppress-experimental-feature-warning "Direct link to --suppress-experimental-feature-warning")
Aliases: `--suppress-experimental-warning`
Suppress warnings about using experimental features
### `--suppress-deprecated-feature-warning`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--suppress-deprecated-feature-warning "Direct link to --suppress-deprecated-feature-warning")
Aliases: `--suppress-deprecated-feature-warnings`, `--suppress-deprecated-warning`, `--suppress-deprecated-warnings`
Suppress warnings about using deprecated features
## Help options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#help-options "Direct link to Help options")
Available in commands:
[`add-path`](https://scala-cli.virtuslab.org/docs/reference/commands#add-path), [`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop exit`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-exit), [`bloop output`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-output), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`clean`](https://scala-cli.virtuslab.org/docs/reference/commands#clean), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`default-file`](https://scala-cli.virtuslab.org/docs/reference/commands#default-file), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`directories`](https://scala-cli.virtuslab.org/docs/reference/commands#directories), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`help`](https://scala-cli.virtuslab.org/docs/reference/commands#help), [`install completions` , `install-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#install-completions), [`install-home`](https://scala-cli.virtuslab.org/docs/reference/commands#install-home), [`new`](https://scala-cli.virtuslab.org/docs/reference/commands#new), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp create`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-create), [`pgp key-id`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-key-id), [`pgp pull`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-pull), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`pgp sign`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-sign), [`pgp verify`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-verify), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create), [`github secret list` , `gh secret list`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-list), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall), [`uninstall completions` , `uninstall-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall-completions), [`update`](https://scala-cli.virtuslab.org/docs/reference/commands#update), [`version`](https://scala-cli.virtuslab.org/docs/reference/commands#version)
### `--usage`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--usage "Direct link to --usage")
Print usage and exit
### `--help`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help "Direct link to --help")
Aliases: `-h`, `-help`
Print help message and exit
### `--help-full`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-full "Direct link to --help-full")
Aliases: `--full-help`, `-full-help`, `-help-full`
Print help message, including hidden options, and exit
## Help group options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#help-group-options "Direct link to Help group options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--help-envs`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-envs "Direct link to --help-envs")
Aliases: `--env-help`, `--envs-help`, `--help-env`
Show environment variable help
### `--help-js`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-js "Direct link to --help-js")
Show options for ScalaJS
### `--help-native`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-native "Direct link to --help-native")
Show options for ScalaNative
### `--help-scaladoc`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-scaladoc "Direct link to --help-scaladoc")
Aliases: `--doc-help`, `--help-doc`, `--scaladoc-help`
Show options for Scaladoc
### `--help-repl`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-repl "Direct link to --help-repl")
Aliases: `--repl-help`
Show options for Scala REPL
### `--help-scalafmt`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-scalafmt "Direct link to --help-scalafmt")
Aliases: `--fmt-help`, `--help-fmt`, `--scalafmt-help`
Show options for Scalafmt
## Install completions options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#install-completions-options "Direct link to Install completions options")
Available in commands:
[`install completions` , `install-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#install-completions)
### `--format`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--format "Direct link to --format")
Aliases: `--shell`
Name of the shell, either zsh or bash
### `--rc-file`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--rc-file "Direct link to --rc-file")
Path to `*rc` file, defaults to `.bashrc` or `.zshrc` depending on shell
### `--output`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--output-2 "Direct link to --output-2")
Aliases: `-o`
Completions output directory
### `--banner`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--banner "Direct link to --banner")
\[Internal\] Custom banner in comment placed in rc file
### `--name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--name "Direct link to --name")
\[Internal\] Custom completions name
### `--env`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--env "Direct link to --env")
Print completions to stdout
## Java options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#java-options "Direct link to Java options")
Available in commands:
[`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--java-opt`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--java-opt "Direct link to --java-opt")
Aliases: `-J`
Set Java options, such as `-Xmx1g`
## Java prop options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#java-prop-options "Direct link to Java prop options")
Available in commands:
[`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--java-prop-option`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--java-prop-option "Direct link to --java-prop-option")
Aliases: `--java-prop`
Add java properties. Note that options equal `-Dproperty=value` are assumed to be java properties and don't require to be passed after `--java-prop`.
## Jvm options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#jvm-options "Direct link to Jvm options")
Available in commands:
[`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--java-home`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--java-home "Direct link to --java-home")
Set the Java home directory
### `--jvm`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jvm "Direct link to --jvm")
Aliases: `-j`
Use a specific JVM, such as `14`, `temurin:11`, or `graalvm:21`, or `system`. scala-cli uses [coursier](https://get-coursier.io/) to fetch JVMs, so you can use `cs java --available` to list the available JVMs.
### `--jvm-index`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jvm-index "Direct link to --jvm-index")
\[Internal\] JVM index URL
### `--jvm-index-os`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jvm-index-os "Direct link to --jvm-index-os")
\[Internal\] Operating system to use when looking up in the JVM index
### `--jvm-index-arch`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jvm-index-arch "Direct link to --jvm-index-arch")
\[Internal\] CPU architecture to use when looking up in the JVM index
### `--javac-plugin`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--javac-plugin "Direct link to --javac-plugin")
\[Internal\] Javac plugin dependencies or files
### `--javac-option`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--javac-option "Direct link to --javac-option")
Aliases: `--javac-opt`
\[Internal\] Javac options
### `--bsp-debug-port`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bsp-debug-port "Direct link to --bsp-debug-port")
\[Internal\] Port for BSP debugging
## Logging options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#logging-options "Direct link to Logging options")
Available in commands:
[`add-path`](https://scala-cli.virtuslab.org/docs/reference/commands#add-path), [`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop exit`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-exit), [`bloop output`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-output), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`clean`](https://scala-cli.virtuslab.org/docs/reference/commands#clean), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`default-file`](https://scala-cli.virtuslab.org/docs/reference/commands#default-file), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`directories`](https://scala-cli.virtuslab.org/docs/reference/commands#directories), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`help`](https://scala-cli.virtuslab.org/docs/reference/commands#help), [`install completions` , `install-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#install-completions), [`install-home`](https://scala-cli.virtuslab.org/docs/reference/commands#install-home), [`new`](https://scala-cli.virtuslab.org/docs/reference/commands#new), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp pull`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-pull), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create), [`github secret list` , `gh secret list`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-list), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall), [`uninstall completions` , `uninstall-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall-completions), [`update`](https://scala-cli.virtuslab.org/docs/reference/commands#update), [`version`](https://scala-cli.virtuslab.org/docs/reference/commands#version)
### `--quiet`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--quiet "Direct link to --quiet")
Aliases: `-q`
Decrease logging verbosity
### `--progress`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--progress "Direct link to --progress")
Use progress bars
## Main class options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#main-class-options "Direct link to Main class options")
Available in commands:
[`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang)
### `--main-class`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--main-class "Direct link to --main-class")
Aliases: `-M`
Specify which main class to run
### `--main-class-ls`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--main-class-ls "Direct link to --main-class-ls")
Aliases: `--list-main-class`, `--list-main-classes`, `--list-main-method`, `--list-main-methods`, `--main-class-list`, `--main-method-list`, `--main-method-ls`
List main classes available in the current context
## Markdown options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#markdown-options "Direct link to Markdown options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--enable-markdown`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--enable-markdown "Direct link to --enable-markdown")
Aliases: `--markdown`, `--md`
Enable markdown support.
## Package options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#package-options "Direct link to Package options")
Available in commands:
[`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package)
### `--output`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--output-3 "Direct link to --output-3")
Aliases: `-o`
Set the destination path
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-2 "Direct link to --force-2")
Aliases: `-f`
Overwrite the destination file, if it exists
### `--library`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--library "Direct link to --library")
Generate a library JAR rather than an executable JAR
### `--with-sources`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--with-sources "Direct link to --with-sources")
Aliases: `--jar-sources`, \[deprecated\] `--sources`, `--sources-jar`, \[deprecated\] `--src`
Generate a source JAR rather than an executable JAR
### `--doc`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--doc "Direct link to --doc")
Aliases: `--javadoc`, `--scaladoc`
Generate a scaladoc JAR rather than an executable JAR
### `--assembly`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--assembly "Direct link to --assembly")
Generate an assembly JAR
### `--preamble`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--preamble "Direct link to --preamble")
For assembly JAR, whether to add a bash / bat preamble
### `--main-class-in-manifest`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--main-class-in-manifest "Direct link to --main-class-in-manifest")
\[Internal\] For assembly JAR, whether to specify a main class in the JAR manifest
### `--spark`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--spark "Direct link to --spark")
\[Internal\] Generate an assembly JAR for Spark (assembly that doesn't contain Spark, nor any of its dependencies)
### `--standalone`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--standalone "Direct link to --standalone")
Package standalone JARs
### `--deb`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--deb "Direct link to --deb")
Build Debian package, available only on Linux
### `--dmg`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dmg "Direct link to --dmg")
Build dmg package, available only on macOS
### `--rpm`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--rpm "Direct link to --rpm")
Build rpm package, available only on Linux
### `--msi`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--msi "Direct link to --msi")
Build msi package, available only on Windows
### `--pkg`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--pkg "Direct link to --pkg")
Build pkg package, available only on macOS
### `--docker`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker "Direct link to --docker")
Build Docker image
### `--provided`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--provided "Direct link to --provided")
\[Internal\] Exclude modules *and their transitive dependencies* from the JAR to be packaged
### `--default-scaladoc-options`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--default-scaladoc-options-1 "Direct link to --default-scaladoc-options-1")
Aliases: `--default-scaladoc-opts`
Use default scaladoc options
### `--native-image`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-image "Direct link to --native-image")
Aliases: `--graal`
Build GraalVM native image
## Packager options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#packager-options "Direct link to Packager options")
Available in commands:
[`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package)
### `--version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--version "Direct link to --version")
Set the version of the generated package
### `--logo-path`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--logo-path "Direct link to --logo-path")
Path to application logo in PNG format, it will be used to generate icon and banner/dialog in msi installer
### `--launcher-app`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--launcher-app "Direct link to --launcher-app")
Set launcher app name, which will be linked to the PATH
### `--description`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--description "Direct link to --description")
### `--maintainer`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--maintainer "Direct link to --maintainer")
Aliases: `-m`
This should contain names and email addresses of co-maintainers of the package
### `--debian-conflicts`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--debian-conflicts "Direct link to --debian-conflicts")
The list of Debian package that this package is not compatible with
### `--debian-dependencies`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--debian-dependencies "Direct link to --debian-dependencies")
The list of Debian packages that this package depends on
### `--deb-architecture`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--deb-architecture "Direct link to --deb-architecture")
Architectures that are supported by the repository (default: all)
### `--priority`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--priority "Direct link to --priority")
This field represents how important it is that the user have the package installed
### `--section`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--section "Direct link to --section")
This field specifies an application area into which the package has been classified
### `--identifier`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--identifier "Direct link to --identifier")
CF Bundle Identifier
### `--license`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--license "Direct link to --license")
Licenses that are supported by the repository (list of licenses: <https://spdx.org/licenses/>)
### `--release`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--release "Direct link to --release")
The number of times this version of the software was released (default: 1)
### `--rpm-architecture`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--rpm-architecture "Direct link to --rpm-architecture")
Architectures that are supported by the repository (default: noarch)
### `--license-path`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--license-path "Direct link to --license-path")
Path to the license file
### `--product-name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--product-name "Direct link to --product-name")
Name of product (default: Scala packager)
### `--exit-dialog`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--exit-dialog "Direct link to --exit-dialog")
Text that will be displayed on the exit dialog
### `--suppress-validation`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--suppress-validation "Direct link to --suppress-validation")
Suppress Wix ICE validation (required for users that are neither interactive, not local administrators)
### `--extra-config`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--extra-config "Direct link to --extra-config")
Path to extra WIX configuration content
### `--is64-bits`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--is64-bits "Direct link to --is64-bits")
Aliases: `--64`
Whether a 64-bit executable is being packaged
### `--installer-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--installer-version "Direct link to --installer-version")
WIX installer version
### `--wix-upgrade-code-guid`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--wix-upgrade-code-guid "Direct link to --wix-upgrade-code-guid")
The GUID to identify that the windows package can be upgraded.
### `--docker-from`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-from "Direct link to --docker-from")
Building the container from base image
### `--docker-image-registry`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-image-registry "Direct link to --docker-image-registry")
The image registry; if empty, it will use the default registry
### `--docker-image-repository`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-image-repository "Direct link to --docker-image-repository")
The image repository
### `--docker-image-tag`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-image-tag "Direct link to --docker-image-tag")
The image tag; the default tag is `latest`
### `--docker-cmd`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-cmd "Direct link to --docker-cmd")
Allows to override the executable used to run the application in docker, otherwise it defaults to sh for the JVM platform and node for the JS platform
### `--docker-extra-directories`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-extra-directories "Direct link to --docker-extra-directories")
Extra directories to be added to the docker image
### `--graalvm-java-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--graalvm-java-version "Direct link to --graalvm-java-version")
GraalVM Java major version to use to build GraalVM native images (17 by default)
### `--graalvm-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--graalvm-version "Direct link to --graalvm-version")
GraalVM version to use to build GraalVM native images (17.0.9 by default)
### `--graalvm-jvm-id`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--graalvm-jvm-id "Direct link to --graalvm-jvm-id")
JVM id of GraalVM distribution to build GraalVM native images (like "graalvm-java17:22.0.0")
### `--graalvm-args`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--graalvm-args "Direct link to --graalvm-args")
Pass args to GraalVM
## Pgp push pull options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-push-pull-options "Direct link to Pgp push pull options")
Available in commands:
[`pgp pull`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-pull), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup)
### `--key-server`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--key-server "Direct link to --key-server")
Key server to push / pull keys from
## Power options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#power-options "Direct link to Power options")
Available in commands:
[`add-path`](https://scala-cli.virtuslab.org/docs/reference/commands#add-path), [`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop exit`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-exit), [`bloop output`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-output), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`clean`](https://scala-cli.virtuslab.org/docs/reference/commands#clean), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`default-file`](https://scala-cli.virtuslab.org/docs/reference/commands#default-file), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`directories`](https://scala-cli.virtuslab.org/docs/reference/commands#directories), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`help`](https://scala-cli.virtuslab.org/docs/reference/commands#help), [`install completions` , `install-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#install-completions), [`install-home`](https://scala-cli.virtuslab.org/docs/reference/commands#install-home), [`new`](https://scala-cli.virtuslab.org/docs/reference/commands#new), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp pull`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-pull), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create), [`github secret list` , `gh secret list`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-list), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall), [`uninstall completions` , `uninstall-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall-completions), [`update`](https://scala-cli.virtuslab.org/docs/reference/commands#update), [`version`](https://scala-cli.virtuslab.org/docs/reference/commands#version)
### `--power`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--power "Direct link to --power")
Allows to use restricted & experimental features
## Publish options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-options "Direct link to Publish options")
Available in commands:
[`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local)
### `--working-dir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--working-dir "Direct link to --working-dir")
\[Internal\] Directory where temporary files for publishing should be written
### `--scala-version-suffix`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-version-suffix "Direct link to --scala-version-suffix")
\[Internal\] Scala version suffix to append to the module name, like "\_2.13" or "\_3"
### `--scala-platform-suffix`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-platform-suffix "Direct link to --scala-platform-suffix")
\[Internal\] Scala platform suffix to append to the module name, like "\_sjs1" or "\_native0.4"
### `--with-sources`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--with-sources-1 "Direct link to --with-sources-1")
Aliases: `--jar-sources`, \[deprecated\] `--sources`, `--sources-jar`
Whether to build and publish source JARs
### `--doc`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--doc-1 "Direct link to --doc-1")
Aliases: `--javadoc`, `--scaladoc`
Whether to build and publish doc JARs
### `--gpg-key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--gpg-key "Direct link to --gpg-key")
Aliases: `-K`
ID of the GPG key to use to sign artifacts
### `--signer`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--signer "Direct link to --signer")
Method to use to sign artifacts
### `--gpg-option`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--gpg-option "Direct link to --gpg-option")
Aliases: `-G`, `--gpg-opt`
gpg command-line options
### `--ivy2-home`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ivy2-home "Direct link to --ivy2-home")
Set Ivy 2 home directory
### `--checksum`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--checksum "Direct link to --checksum")
\[Internal\]
### `--dummy`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dummy "Direct link to --dummy")
Proceed as if publishing, but do not upload / write artifacts to the remote repository
### `--ivy2-local-like`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ivy2-local-like "Direct link to --ivy2-local-like")
\[Internal\]
### `--parallel-upload`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--parallel-upload "Direct link to --parallel-upload")
\[Internal\]
## Publish local options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-local-options "Direct link to Publish local options")
Available in commands:
[`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local)
### `--m2`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--m2 "Direct link to --m2")
Aliases: `--maven-local`
Publish to the local Maven repository (defaults to ~/.m2/repository) instead of Ivy2 local
### `--m2-home`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--m2-home "Direct link to --m2-home")
Set the local Maven repository path (defaults to ~/.m2/repository)
## Publish params options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-params-options "Direct link to Publish params options")
Available in commands:
[`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup)
### `--organization`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--organization "Direct link to --organization")
Organization to publish artifacts under
### `--name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--name-1 "Direct link to --name-1")
Name to publish artifacts as
### `--module-name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--module-name "Direct link to --module-name")
Final name to publish artifacts as, including Scala version and platform suffixes if any
### `--url`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--url "Direct link to --url")
URL to put in publishing metadata
### `--license`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--license-1 "Direct link to --license-1")
License to put in publishing metadata
### `--vcs`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--vcs "Direct link to --vcs")
VCS information to put in publishing metadata
### `--description`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--description-1 "Direct link to --description-1")
Description to put in publishing metadata
### `--developer`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--developer "Direct link to --developer")
Developer(s) to add in publishing metadata, like "alex\|Alex\|<https://alex.info>" or "alex\|Alex\|<https://alex.info%7Calex@alex.me>"
### `--secret-key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--secret-key "Direct link to --secret-key")
Secret key to use to sign artifacts with Bouncy Castle
### `--secret-key-password`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--secret-key-password "Direct link to --secret-key-password")
Aliases: `--secret-key-pass`
Password of secret key to use to sign artifacts with Bouncy Castle
### `--ci`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ci "Direct link to --ci")
Use or setup publish parameters meant to be used on continuous integration
## Publish repository options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-repository-options "Direct link to Publish repository options")
Available in commands:
[`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup)
### `--publish-repository`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--publish-repository "Direct link to --publish-repository")
Aliases: `-R`, `--publish-repo`
Repository to publish to
### `--user`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--user "Direct link to --user")
User to use with publishing repository
### `--password`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--password "Direct link to --password")
Password to use with publishing repository
### `--realm`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--realm "Direct link to --realm")
Realm to use when passing credentials to publishing repository
## Publish setup options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-setup-options "Direct link to Publish setup options")
Available in commands:
[`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup)
### `--public-key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--public-key "Direct link to --public-key")
Public key to use to verify artifacts (to be uploaded to a key server)
### `--check`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--check-2 "Direct link to --check-2")
Check if some options for publishing are missing, and exit with non-zero return code if that's the case
### `--token`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--token "Direct link to --token")
GitHub token to use to upload secrets to GitHub - password encoded
### `--random-secret-key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--random-secret-key "Direct link to --random-secret-key")
Generate a random key pair for publishing, with a secret key protected by a random password
### `--random-secret-key-mail`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--random-secret-key-mail "Direct link to --random-secret-key-mail")
When generating a random key pair, the mail to associate to it
### `--checks`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--checks "Direct link to --checks")
The option groups to check - can be "all", or a comma-separated list of "core", "signing", "repo", "extra"
### `--check-workflow`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--check-workflow "Direct link to --check-workflow")
Whether to check if a GitHub workflow already exists (one for publishing is written if none is found)
### `--check-gitignore`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--check-gitignore "Direct link to --check-gitignore")
Whether to check if a .gitignore file already exists (one is written if none is found)
### `--dummy`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dummy-1 "Direct link to --dummy-1")
Dummy mode - don't upload any secret to GitHub
## Python options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#python-options "Direct link to Python options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--python-setup`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--python-setup "Direct link to --python-setup")
Set Java options so that Python can be loaded
### `--python`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--python "Direct link to --python")
Aliases: `--py`
Enable Python support via ScalaPy
### `--scala-py-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-py-version "Direct link to --scala-py-version")
Aliases: `--scalapy-version`
Set ScalaPy version (0.5.3 by default)
## Repl options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#repl-options "Direct link to Repl options")
Available in commands:
[`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl)
### `--ammonite`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ammonite "Direct link to --ammonite")
Aliases: `-A`, `--amm`
Use Ammonite (instead of the default Scala REPL)
### `--ammonite-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ammonite-version "Direct link to --ammonite-version")
Aliases: `--ammonite-ver`
Set the Ammonite version (3.0.8 by default)
### `--ammonite-arg`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ammonite-arg "Direct link to --ammonite-arg")
Aliases: `-a`
\[Internal\] Provide arguments for ammonite repl
### `--repl-dry-run`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--repl-dry-run "Direct link to --repl-dry-run")
\[Internal\] Don't actually run the REPL, just fetch it
## Run options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#run-options "Direct link to Run options")
Available in commands:
[`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang)
### `--spark-submit`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--spark-submit "Direct link to --spark-submit")
Aliases: `--spark`
\[Internal\] Run as a Spark job, using the spark-submit command
### `--submit-argument`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--submit-argument "Direct link to --submit-argument")
Aliases: `--submit-arg`
\[Internal\] Spark-submit arguments
### `--standalone-spark`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--standalone-spark "Direct link to --standalone-spark")
Aliases: `--spark-standalone`
Run as a Spark job, using a vanilla Spark distribution downloaded by Scala CLI
### `--hadoop-jar`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--hadoop-jar "Direct link to --hadoop-jar")
Aliases: `--hadoop`
Run as a Hadoop job, using the "hadoop jar" command
### `--command`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--command "Direct link to --command")
Print the command that would have been run (one argument per line), rather than running it
### `--scratch-dir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scratch-dir "Direct link to --scratch-dir")
Temporary / working directory where to write generated launchers
### `--use-manifest`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--use-manifest "Direct link to --use-manifest")
\[Internal\] Run Java commands using a manifest-based class path (shortens command length)
## Scala.js options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalajs-options "Direct link to Scala.js options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--js`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js "Direct link to --js")
Enable Scala.js. To show more options for Scala.js pass `--help-js`
### `--js-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-version "Direct link to --js-version")
The Scala.js version (1.20.2 by default).
### `--js-mode`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-mode "Direct link to --js-mode")
The Scala.js mode, for `fastLinkJS` use one of \[`dev`, `fastLinkJS` or `fast`\], for `fullLinkJS` use one of \[`release`, `fullLinkJS`, `full`\]
### `--js-no-opt`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-no-opt "Direct link to --js-no-opt")
\[Internal\] Disable optimalisation for Scala.js, overrides `--js-mode`
### `--js-module-kind`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-module-kind "Direct link to --js-module-kind")
The Scala.js module kind: commonjs/common, esmodule/es, nomodule/none
### `--js-check-ir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-check-ir "Direct link to --js-check-ir")
### `--js-emit-source-maps`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-emit-source-maps "Direct link to --js-emit-source-maps")
Emit source maps
### `--js-source-maps-path`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-source-maps-path "Direct link to --js-source-maps-path")
Set the destination path of source maps
### `--js-es-module-import-map`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-es-module-import-map "Direct link to --js-es-module-import-map")
A file relative to the root directory containing import maps for ES module imports
### `--js-dom`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-dom "Direct link to --js-dom")
Enable jsdom
### `--js-emit-wasm`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-emit-wasm "Direct link to --js-emit-wasm")
Emit WASM
### `--js-header`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-header "Direct link to --js-header")
A header that will be added at the top of generated .js files
### `--js-allow-big-ints-for-longs`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-allow-big-ints-for-longs "Direct link to --js-allow-big-ints-for-longs")
Primitive Longs *may* be compiled as primitive JavaScript bigints
### `--js-avoid-classes`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-avoid-classes "Direct link to --js-avoid-classes")
Avoid class'es when using functions and prototypes has the same observable semantics.
### `--js-avoid-lets-and-consts`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-avoid-lets-and-consts "Direct link to --js-avoid-lets-and-consts")
Avoid lets and consts when using vars has the same observable semantics.
### `--js-module-split-style`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-module-split-style "Direct link to --js-module-split-style")
The Scala.js module split style: fewestmodules, smallestmodules, smallmodulesfor
### `--js-small-module-for-package`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-small-module-for-package "Direct link to --js-small-module-for-package")
Create as many small modules as possible for the classes in the passed packages and their subpackages.
### `--js-es-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-es-version "Direct link to --js-es-version")
The Scala.js ECMA Script version: es5\_1, es2015, es2016, es2017, es2018, es2019, es2020, es2021
### `--js-linker-path`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-linker-path "Direct link to --js-linker-path")
\[Internal\] Path to the Scala.js linker
### `--js-cli-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-cli-version "Direct link to --js-cli-version")
\[Internal\] Scala.js CLI version to use for linking (1.20.2 by default).
### `--js-cli-java-arg`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-cli-java-arg "Direct link to --js-cli-java-arg")
\[Internal\] Scala.js CLI Java options
### `--js-cli-on-jvm`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-cli-on-jvm "Direct link to --js-cli-on-jvm")
\[Internal\] Whether to run the Scala.js CLI on the JVM or using a native executable
## Scala Native options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scala-native-options "Direct link to Scala Native options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--native`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native "Direct link to --native")
Enable Scala Native. To show more options for Scala Native pass `--help-native`
### `--native-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-version "Direct link to --native-version")
Set the Scala Native version (0.5.10 by default).
### `--native-mode`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-mode "Direct link to --native-mode")
Set Scala Native compilation mode (debug by default): debug, release-fast, release-size, release-full
### `--native-lto`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-lto "Direct link to --native-lto")
Link-time optimisation mode (none by default): none, full, thin
### `--native-gc`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-gc "Direct link to --native-gc")
Set the Scala Native garbage collector (immix by default): immix, commix, boehm, none
### `--native-clang`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-clang "Direct link to --native-clang")
Path to the Clang command
### `--native-clangpp`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-clangpp "Direct link to --native-clangpp")
Path to the Clang++ command
### `--native-linking`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-linking "Direct link to --native-linking")
Extra options passed to `clang` verbatim during linking
### `--native-linking-defaults`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-linking-defaults "Direct link to --native-linking-defaults")
\[Internal\] Use default linking settings
### `--native-compile`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-compile "Direct link to --native-compile")
List of compile options
### `--native-c-compile`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-c-compile "Direct link to --native-c-compile")
List of compile options (C files only)
### `--native-cpp-compile`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-cpp-compile "Direct link to --native-cpp-compile")
List of compile options (C++ files only)
### `--native-compile-defaults`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-compile-defaults "Direct link to --native-compile-defaults")
\[Internal\] Use default compile options
### `--native-target`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-target "Direct link to --native-target")
Build target type
### `--embed-resources`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--embed-resources "Direct link to --embed-resources")
Embed resources into the Scala Native binary (can be read with the Java resources API)
### `--native-multithreading`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-multithreading "Direct link to --native-multithreading")
Enable/disable Scala Native multithreading support
## Scalac options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalac-options "Direct link to Scalac options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--args-file`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--args-file "Direct link to --args-file")
File with scalac options.
### `--scalac-option`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalac-option "Direct link to --scalac-option")
Aliases: `-O`, `--scala-opt`, `--scala-option`
Add a `scalac` option. Note that options starting with `-g`, `-language`, `-opt`, `-P`, `-target`, `-V`, `-W`, `-X`, and `-Y` are assumed to be Scala compiler options and don't require to be passed after `-O` or `--scalac-option`.
## Scalac extra options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalac-extra-options "Direct link to Scalac extra options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--scalac-help`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalac-help "Direct link to --scalac-help")
Aliases: `--help-scalac`
Show help for scalac. This is an alias for --scalac-option -help
### `--scalac-verbose`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalac-verbose "Direct link to --scalac-verbose")
Aliases: `--verbose-scalac`
Turn verbosity on for scalac. This is an alias for --scalac-option -verbose
## Scalafix options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalafix-options "Direct link to Scalafix options")
Available in commands:
[`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix)
### `--scalafix-conf`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafix-conf "Direct link to --scalafix-conf")
Custom path to the scalafix configuration file.
### `--scalafix-arg`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafix-arg "Direct link to --scalafix-arg")
Pass extra argument(s) to scalafix.
### `--scalafix-rules`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafix-rules "Direct link to --scalafix-rules")
Run scalafix rule(s) explicitly, overriding the configuration file default.
## Scope options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scope-options "Direct link to Scope options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--test`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--test "Direct link to --test")
Aliases: `--test-scope`, `--with-test`, `--with-test-scope`
Include test scope
## Secret options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#secret-options "Direct link to Secret options")
Available in commands:
[`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create), [`github secret list` , `gh secret list`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-list)
### `--token`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--token-1 "Direct link to --token-1")
### `--repository`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--repository-1 "Direct link to --repository-1")
Aliases: `--repo`
## Secret create options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#secret-create-options "Direct link to Secret create options")
Available in commands:
[`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create)
### `--public-key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--public-key-1 "Direct link to --public-key-1")
Aliases: `--pub-key`
### `--dummy`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dummy-2 "Direct link to --dummy-2")
Aliases: `-n`
### `--print-request`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--print-request "Direct link to --print-request")
\[Internal\]
## Shared options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#shared-options "Direct link to Shared options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--scala-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-version "Direct link to --scala-version")
Aliases: `-S`, `--scala`
Set the Scala version (3.8.2 by default)
### `--scala-binary-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-binary-version "Direct link to --scala-binary-version")
Aliases: `-B`, `--scala-bin`, `--scala-binary`
\[Internal\] Set the Scala binary version
### `--extra-jars`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--extra-jars "Direct link to --extra-jars")
Aliases: `--class`, `--class-path`, `--classes`, `-classpath`, `--classpath`, `-cp`, `--extra-class`, `--extra-class-path`, `--extra-classes`, `--extra-jar`, `--jar`, `--jars`
Add extra JARs and compiled classes to the class path
### `--extra-compile-only-jars`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--extra-compile-only-jars "Direct link to --extra-compile-only-jars")
Aliases: `--compile-only-jar`, `--compile-only-jars`, `--extra-compile-only-jar`
Add extra JARs in the compilaion class path. Mainly using to run code in managed environments like Spark not to include certain depenencies on runtime ClassPath.
### `--extra-source-jars`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--extra-source-jars "Direct link to --extra-source-jars")
Aliases: `--extra-source-jar`, `--source-jar`, `--source-jars`
Add extra source JARs
### `--resource-dirs`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--resource-dirs "Direct link to --resource-dirs")
Aliases: `--resource-dir`
Add a resource directory
### `--as-jar`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--as-jar "Direct link to --as-jar")
\[Internal\] Put project in class paths as a JAR rather than as a byte code directory
### `--platform`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--platform "Direct link to --platform")
Specify platform
### `--scala-library`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-library "Direct link to --scala-library")
\[Internal\]
### `--with-compiler`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--with-compiler "Direct link to --with-compiler")
Aliases: `-with-compiler`, `--with-scala-compiler`
Allows to include the Scala compiler artifacts on the classpath.
### `--java`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--java "Direct link to --java")
\[Internal\] Do not add dependency to Scala Standard library. This is useful, when Scala CLI works with pure Java projects.
### `--runner`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--runner "Direct link to --runner")
\[Internal\] Should include Scala CLI runner on the runtime ClassPath. Runner is added by default for application running on JVM using standard Scala versions. Runner is used to make stack traces more readable in case of application failure.
### `--strict-bloop-json-check`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--strict-bloop-json-check "Direct link to --strict-bloop-json-check")
\[Internal\]
### `--compilation-output`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--compilation-output "Direct link to --compilation-output")
Aliases: `--compile-out`, `--compile-output`, `-d`, `--destination`, `--output-directory`
Copy compilation results to output directory using either relative or absolute path
### `--with-toolkit`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--with-toolkit "Direct link to --with-toolkit")
Aliases: `--toolkit`
Add toolkit to classPath (not supported in Scala 2.12), 'default' version for Scala toolkit: 0.8.0, 'default' version for typelevel toolkit: 0.1.29
### `--exclude`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--exclude "Direct link to --exclude")
Exclude sources
### `--object-wrapper`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--object-wrapper "Direct link to --object-wrapper")
Force object wrapper for scripts
## Snippet options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#snippet-options "Direct link to Snippet options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--script-snippet`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--script-snippet "Direct link to --script-snippet")
Allows to execute a passed string as a Scala script
### `--execute-script`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--execute-script "Direct link to --execute-script")
Aliases: `-e`, `--execute-sc`, `--execute-scala-script`
\[Internal\] A synonym to --script-snippet, which defaults the sub-command to `run` when no sub-command is passed explicitly
### `--scala-snippet`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-snippet "Direct link to --scala-snippet")
Allows to execute a passed string as Scala code
### `--execute-scala`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--execute-scala "Direct link to --execute-scala")
\[Internal\] A synonym to --scala-snippet, which defaults the sub-command to `run` when no sub-command is passed explicitly
### `--java-snippet`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--java-snippet "Direct link to --java-snippet")
Allows to execute a passed string as Java code
### `--execute-java`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--execute-java "Direct link to --execute-java")
A synonym to --scala-snippet, which defaults the sub-command to `run` when no sub-command is passed explicitly
### `--markdown-snippet`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--markdown-snippet "Direct link to --markdown-snippet")
Aliases: `--md-snippet`
Allows to execute a passed string as Markdown code
### `--execute-markdown`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--execute-markdown "Direct link to --execute-markdown")
Aliases: `--execute-md`
\[Internal\] A synonym to --markdown-snippet, which defaults the sub-command to `run` when no sub-command is passed explicitly
## Source generator options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#source-generator-options "Direct link to Source generator options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--use-build-info`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--use-build-info "Direct link to --use-build-info")
Aliases: `--build-info`
Generate BuildInfo for project
## Suppress warning options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#suppress-warning-options "Direct link to Suppress warning options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--suppress-directives-in-multiple-files-warning`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--suppress-directives-in-multiple-files-warning "Direct link to --suppress-directives-in-multiple-files-warning")
Aliases: `--suppress-warning-directives-in-multiple-files`
Suppress warnings about using directives in multiple files
### `--suppress-outdated-dependency-warning`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--suppress-outdated-dependency-warning "Direct link to --suppress-outdated-dependency-warning")
Suppress warnings about outdated dependencies in project
## Test options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#test-options "Direct link to Test options")
Available in commands:
[`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--test-frameworks`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--test-frameworks "Direct link to --test-frameworks")
Aliases: `--test-framework`
Names of the test frameworks' runner classes to use while running tests. Skips framework lookup and only runs passed frameworks.
### `--require-tests`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--require-tests "Direct link to --require-tests")
Fail if no test suites were run
### `--test-only`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--test-only "Direct link to --test-only")
Specify a glob pattern to filter the tests suite to be run.
## Uninstall options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#uninstall-options "Direct link to Uninstall options")
Available in commands:
[`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall)
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-3 "Direct link to --force-3")
Aliases: `-f`
Force scala-cli uninstall
### `--skip-cache`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--skip-cache "Direct link to --skip-cache")
\[Internal\] Don't clear Scala CLI cache
### `--binary-name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--binary-name "Direct link to --binary-name")
\[Internal\] Binary name
### `--bin-dir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bin-dir "Direct link to --bin-dir")
\[Internal\] Binary directory
## Uninstall completions options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#uninstall-completions-options "Direct link to Uninstall completions options")
Available in commands:
[`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall), [`uninstall completions` , `uninstall-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall-completions)
### `--rc-file`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--rc-file-1 "Direct link to --rc-file-1")
Path to `*rc` file, defaults to `.bashrc` or `.zshrc` depending on shell
### `--banner`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--banner-1 "Direct link to --banner-1")
\[Internal\] Custom banner in comment placed in rc file
### `--name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--name-2 "Direct link to --name-2")
\[Internal\] Custom completions name
## Update options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#update-options "Direct link to Update options")
Available in commands:
[`update`](https://scala-cli.virtuslab.org/docs/reference/commands#update)
### `--binary-name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--binary-name-1 "Direct link to --binary-name-1")
\[Internal\] Binary name
### `--bin-dir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bin-dir-1 "Direct link to --bin-dir-1")
\[Internal\] Binary directory
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-4 "Direct link to --force-4")
Aliases: `-f`
Force update Scala CLI if it is outdated
### `--is-internal-run`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--is-internal-run "Direct link to --is-internal-run")
\[Internal\]
### `--gh-token`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--gh-token "Direct link to --gh-token")
\[Internal\] A github token used to access GitHub. Not needed in most cases.
## Verbosity options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#verbosity-options "Direct link to Verbosity options")
Available in commands:
[`add-path`](https://scala-cli.virtuslab.org/docs/reference/commands#add-path), [`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop exit`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-exit), [`bloop output`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-output), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`clean`](https://scala-cli.virtuslab.org/docs/reference/commands#clean), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`default-file`](https://scala-cli.virtuslab.org/docs/reference/commands#default-file), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`directories`](https://scala-cli.virtuslab.org/docs/reference/commands#directories), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`help`](https://scala-cli.virtuslab.org/docs/reference/commands#help), [`install completions` , `install-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#install-completions), [`install-home`](https://scala-cli.virtuslab.org/docs/reference/commands#install-home), [`new`](https://scala-cli.virtuslab.org/docs/reference/commands#new), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp pull`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-pull), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create), [`github secret list` , `gh secret list`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-list), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall), [`uninstall completions` , `uninstall-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall-completions), [`update`](https://scala-cli.virtuslab.org/docs/reference/commands#update), [`version`](https://scala-cli.virtuslab.org/docs/reference/commands#version)
### `--verbose`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--verbose "Direct link to --verbose")
Aliases: `-v`, `-verbose`
Increase verbosity (can be specified multiple times)
### `--interactive`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--interactive "Direct link to --interactive")
Aliases: `-i`
Interactive mode
### `--actions`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--actions "Direct link to --actions")
Enable actionable diagnostics
## Version options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#version-options "Direct link to Version options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`version`](https://scala-cli.virtuslab.org/docs/reference/commands#version)
### `--compute-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--compute-version "Direct link to --compute-version")
Method used to compute the project version
### `--project-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--project-version "Direct link to --project-version")
Set the project version
### `--cli-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--cli-version "Direct link to --cli-version")
Aliases: `--cli`
Show plain Scala CLI version only
### `--scala-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-version-1 "Direct link to --scala-version-1")
Aliases: `--scala`
Show plain Scala version only
### `--gh-token`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--gh-token-1 "Direct link to --gh-token-1")
\[Internal\] A github token used to access GitHub. Not needed in most cases.
### `--offline`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--offline-1 "Direct link to --offline-1")
Don't check for the newest available Scala CLI version upstream
## Watch options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#watch-options "Direct link to Watch options")
Available in commands:
[`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--watch`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--watch "Direct link to --watch")
Aliases: `-w`
Run the application in the background, automatically wake the thread and re-run if sources have been changed
### `--restart`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--restart "Direct link to --restart")
Aliases: `--revolver`
Run the application in the background, automatically kill the process and restart if sources have been changed
### `--watching`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--watching "Direct link to --watching")
Aliases: `--watching-path`
Watch additional paths for changes (used together with --watch or --restart)
## Internal options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#internal-options "Direct link to Internal options")
### Add path options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#add-path-options "Direct link to Add path options")
Available in commands:
[`add-path`](https://scala-cli.virtuslab.org/docs/reference/commands#add-path)
### `--title`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--title "Direct link to --title")
\[Internal\]
### Bloop options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#bloop-options "Direct link to Bloop options")
Available in commands:
[`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop)
### `--working-directory`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--working-directory "Direct link to --working-directory")
Aliases: `--dir`, `--working-dir`
\[Internal\]
### Bloop start options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#bloop-start-options "Direct link to Bloop start options")
Available in commands:
[`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start)
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-5 "Direct link to --force-5")
Aliases: `-f`
\[Internal\]
### Bsp options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#bsp-options "Direct link to Bsp options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp)
### `--json-options`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--json-options "Direct link to --json-options")
\[Internal\] Command-line options JSON file
### `--json-launcher-options`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--json-launcher-options "Direct link to --json-launcher-options")
\[Internal\] Command-line launcher options JSON file
### `--envs`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--envs "Direct link to --envs")
Aliases: `--envs-file`
\[Internal\] Command-line options environment variables file
### Bsp file options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#bsp-file-options "Direct link to Bsp file options")
Available in commands:
[`clean`](https://scala-cli.virtuslab.org/docs/reference/commands#clean), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide)
### `--bsp-directory`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bsp-directory "Direct link to --bsp-directory")
Aliases: `--bsp-dir`
\[Internal\] Custom BSP configuration location
### `--bsp-name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bsp-name "Direct link to --bsp-name")
Aliases: `--name`
\[Internal\] Name of BSP
### Default file options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#default-file-options "Direct link to Default file options")
Available in commands:
[`default-file`](https://scala-cli.virtuslab.org/docs/reference/commands#default-file)
### `--write`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--write "Direct link to --write")
\[Internal\] Write result to files rather than to stdout
### `--list`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--list "Direct link to --list")
\[Internal\] List available default files
### `--list-ids`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--list-ids "Direct link to --list-ids")
\[Internal\] List available default file ids
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-6 "Direct link to --force-6")
Aliases: `-f`
\[Internal\] Force overwriting destination files
### Input options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#input-options "Direct link to Input options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--default-forbidden-directories`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--default-forbidden-directories "Direct link to --default-forbidden-directories")
\[Internal\]
### `--forbid`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--forbid "Direct link to --forbid")
\[Internal\]
### Install home options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#install-home-options "Direct link to Install home options")
Available in commands:
[`install-home`](https://scala-cli.virtuslab.org/docs/reference/commands#install-home)
### `--scala-cli-binary-path`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-cli-binary-path "Direct link to --scala-cli-binary-path")
\[Internal\]
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-7 "Direct link to --force-7")
Aliases: `-f`
\[Internal\] Overwrite if it exists
### `--binary-name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--binary-name-2 "Direct link to --binary-name-2")
\[Internal\] Binary name
### `--env`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--env-1 "Direct link to --env-1")
\[Internal\] Print the update to `env` variable
### `--bin-dir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bin-dir-2 "Direct link to --bin-dir-2")
\[Internal\] Binary directory
### Pgp create options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-create-options "Direct link to Pgp create options")
Available in commands:
[`pgp create`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-create)
### `--email`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--email-1 "Direct link to --email-1")
\[Internal\]
### `--password`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--password-1 "Direct link to --password-1")
\[Internal\]
### `--dest`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dest "Direct link to --dest")
\[Internal\]
### `--pub-dest`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--pub-dest "Direct link to --pub-dest")
\[Internal\]
### `--secret-dest`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--secret-dest "Direct link to --secret-dest")
\[Internal\]
### `--verbose`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--verbose-1 "Direct link to --verbose-1")
\[Internal\]
### `--quiet`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--quiet-1 "Direct link to --quiet-1")
\[Internal\]
### Pgp key id options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-key-id-options "Direct link to Pgp key id options")
Available in commands:
[`pgp key-id`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-key-id)
### `--fingerprint`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--fingerprint "Direct link to --fingerprint")
\[Internal\]
### `--verbose`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--verbose-2 "Direct link to --verbose-2")
Aliases: `-v`
\[Internal\]
### Pgp pull options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-pull-options "Direct link to Pgp pull options")
Available in commands:
[`pgp pull`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-pull)
### `--allow-empty`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--allow-empty "Direct link to --allow-empty")
\[Internal\] Whether to exit with code 0 if no key is passed
### Pgp push options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-push-options "Direct link to Pgp push options")
Available in commands:
[`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push)
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-8 "Direct link to --force-8")
Aliases: `-f`
\[Internal\] Try to push the key even if Scala CLI thinks it's not a public key
### `--allow-empty`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--allow-empty-1 "Direct link to --allow-empty-1")
\[Internal\] Whether to exit with code 0 if no key is passed
### Pgp scala signing options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-scala-signing-options "Direct link to Pgp scala signing options")
Available in commands:
[`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup)
### `--signing-cli-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--signing-cli-version "Direct link to --signing-cli-version")
\[Internal\] scala-cli-signing version when running externally (0.2.13 by default)
### `--signing-cli-java-arg`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--signing-cli-java-arg "Direct link to --signing-cli-java-arg")
\[Internal\] Pass arguments to the Java command when running scala-cli-singing externally on JVM
### `--force-signing-externally`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-signing-externally "Direct link to --force-signing-externally")
\[Internal\] When running Scala CLI on the JVM, force running scala-cli-singing externally
### `--force-jvm-signing-cli`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-jvm-signing-cli "Direct link to --force-jvm-signing-cli")
\[Internal\] When running Scala CLI on the JVM, force running scala-cli-singing using a native launcher or a JVM launcher
### Pgp sign options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-sign-options "Direct link to Pgp sign options")
Available in commands:
[`pgp sign`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-sign)
### `--password`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--password-2 "Direct link to --password-2")
\[Internal\]
### `--secret-key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--secret-key-1 "Direct link to --secret-key-1")
\[Internal\]
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-9 "Direct link to --force-9")
Aliases: `-f`
\[Internal\]
### `--stdout`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--stdout "Direct link to --stdout")
\[Internal\]
### Pgp verify options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-verify-options "Direct link to Pgp verify options")
Available in commands:
[`pgp verify`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-verify)
### `--key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--key "Direct link to --key")
\[Internal\]
### Publish connection options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-connection-options "Direct link to Publish connection options")
Available in commands:
[`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish)
### `--connection-timeout-seconds`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--connection-timeout-seconds "Direct link to --connection-timeout-seconds")
\[Internal\] Connection timeout, in seconds.
### `--connection-timeout-retries`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--connection-timeout-retries "Direct link to --connection-timeout-retries")
\[Internal\] How many times to retry establishing the connection on timeout.
### `--response-timeout-seconds`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--response-timeout-seconds "Direct link to --response-timeout-seconds")
\[Internal\] Waiting for response timeout, in seconds.
### `--staging-repo-retries`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--staging-repo-retries "Direct link to --staging-repo-retries")
\[Internal\] How many times to retry the staging repository operations on failure.
### `--staging-repo-wait-time-milis`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--staging-repo-wait-time-milis "Direct link to --staging-repo-wait-time-milis")
\[Internal\] Time to wait between staging repository operation retries, in milliseconds.
### Semantic db options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#semantic-db-options "Direct link to Semantic db options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--semantic-db`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--semantic-db "Direct link to --semantic-db")
Aliases: `--semanticdb`
\[Internal\] Generate SemanticDBs
### `--semantic-db-target-root`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--semantic-db-target-root "Direct link to --semantic-db-target-root")
Aliases: `--semanticdb-target-root`, `--semanticdb-targetroot`
\[Internal\] SemanticDB target root (default to the compiled classes destination directory)
### `--semantic-db-source-root`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--semantic-db-source-root "Direct link to --semantic-db-source-root")
Aliases: `--semanticdb-source-root`, `--semanticdb-sourceroot`
\[Internal\] SemanticDB source root (default to the project root directory)
### Setup IDE options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#setup-ide-options "Direct link to Setup IDE options")
Available in commands:
[`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide)
### `--charset`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--charset "Direct link to --charset")
\[Internal\]
### Workspace options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#workspace-options "Direct link to Workspace options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`clean`](https://scala-cli.virtuslab.org/docs/reference/commands#clean), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--workspace`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--workspace "Direct link to --workspace")
\[Internal\] Directory where .scala-build is written
[Edit this page](https://github.com/Virtuslab/scala-cli/edit/main/website/docs/reference/cli-options.md)
[PreviousPackaging as GraalVM native images ⚡](https://scala-cli.virtuslab.org/docs/cookbooks/package/native-images)
[NextDirectives](https://scala-cli.virtuslab.org/docs/reference/directives)
- [Scalac options forwarding](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalac-options-forwarding)
- [Scalac options that are directly supported in scala CLI (so can be provided as is, without any prefixes etc.):](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalac-options-that-are-directly-supported-in-scala-cli-so-can-be-provided-as-is-without-any-prefixes-etc)
- [Benchmarking options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#benchmarking-options)
- [`--jmh`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jmh)
- [`--jmh-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jmh-version)
- [Compilation server options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#compilation-server-options)
- [`--bloop-bsp-protocol`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-bsp-protocol)
- [`--bloop-bsp-socket`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-bsp-socket)
- [`--bloop-host`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-host)
- [`--bloop-port`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-port)
- [`--bloop-daemon-dir`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-daemon-dir)
- [`--bloop-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-version)
- [`--bloop-bsp-timeout`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-bsp-timeout)
- [`--bloop-bsp-check-period`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-bsp-check-period)
- [`--bloop-startup-timeout`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-startup-timeout)
- [`--bloop-default-java-opts`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-default-java-opts)
- [`--bloop-java-opt`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-java-opt)
- [`--bloop-global-options-file`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-global-options-file)
- [`--bloop-jvm`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-jvm)
- [`--bloop-working-dir`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-working-dir)
- [`--server`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--server)
- [Compile options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#compile-options)
- [`--print-class-path`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--print-class-path)
- [Config options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#config-options)
- [`--dump`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dump)
- [`--create-pgp-key`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--create-pgp-key)
- [`--pgp-password`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--pgp-password)
- [`--email`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--email)
- [`--password-value`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--password-value)
- [`--unset`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--unset)
- [`--https-only`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--https-only)
- [`--match-host`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--match-host)
- [`--optional`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--optional)
- [`--pass-on-redirect`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--pass-on-redirect)
- [`--force`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force)
- [Coursier options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#coursier-options)
- [`--ttl`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ttl)
- [`--cache`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--cache)
- [`--coursier-validate-checksums`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--coursier-validate-checksums)
- [`--offline`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--offline)
- [Cross options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#cross-options)
- [`--cross`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--cross)
- [Debug options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#debug-options)
- [`--debug`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--debug)
- [`--debug-port`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--debug-port)
- [`--debug-mode`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--debug-mode)
- [Dependency options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#dependency-options)
- [`--dependency`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dependency)
- [`--compile-only-dependency`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--compile-only-dependency)
- [`--repository`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--repository)
- [`--compiler-plugin`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--compiler-plugin)
- [Dependency update options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#dependency-update-options)
- [`--all`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--all)
- [Doc options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#doc-options)
- [`--output`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--output)
- [`--force`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-1)
- [`--default-scaladoc-options`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--default-scaladoc-options)
- [Export options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#export-options)
- [`--sbt`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--sbt)
- [`--maven`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--maven)
- [`--mill`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mill)
- [`--json`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--json)
- [`--sbt-setting`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--sbt-setting)
- [`--project`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--project)
- [`--sbt-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--sbt-version)
- [`--mill-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mill-version)
- [`--mvn-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-version)
- [`--mvn-scala-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-scala-version)
- [`--mvn-exec-plugin-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-exec-plugin-version)
- [`--mvn-app-artifact-id`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-app-artifact-id)
- [`--mvn-app-group-id`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-app-group-id)
- [`--mvn-app-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-app-version)
- [`--output`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--output-1)
- [Fix options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#fix-options)
- [`--check`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--check)
- [`--enable-scalafix`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--enable-scalafix)
- [`--enable-built-in-rules`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--enable-built-in-rules)
- [Fmt options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#fmt-options)
- [`--check`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--check-1)
- [`--respect-project-filters`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--respect-project-filters)
- [`--save-scalafmt-conf`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--save-scalafmt-conf)
- [`--os-arch-suffix`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--os-arch-suffix)
- [`--scalafmt-tag`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-tag)
- [`--scalafmt-github-org-name`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-github-org-name)
- [`--scalafmt-extension`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-extension)
- [`--scalafmt-launcher`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-launcher)
- [`--scalafmt-arg`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-arg)
- [`--scalafmt-conf`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-conf)
- [`--scalafmt-conf-str`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-conf-str)
- [`--scalafmt-dialect`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-dialect)
- [`--scalafmt-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-version)
- [Global suppress warning options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#global-suppress-warning-options)
- [`--suppress-experimental-feature-warning`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--suppress-experimental-feature-warning)
- [`--suppress-deprecated-feature-warning`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--suppress-deprecated-feature-warning)
- [Help options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#help-options)
- [`--usage`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--usage)
- [`--help`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help)
- [`--help-full`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-full)
- [Help group options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#help-group-options)
- [`--help-envs`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-envs)
- [`--help-js`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-js)
- [`--help-native`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-native)
- [`--help-scaladoc`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-scaladoc)
- [`--help-repl`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-repl)
- [`--help-scalafmt`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-scalafmt)
- [Install completions options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#install-completions-options)
- [`--format`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--format)
- [`--rc-file`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--rc-file)
- [`--output`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--output-2)
- [`--banner`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--banner)
- [`--name`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--name)
- [`--env`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--env)
- [Java options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#java-options)
- [`--java-opt`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--java-opt)
- [Java prop options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#java-prop-options)
- [`--java-prop-option`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--java-prop-option)
- [Jvm options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#jvm-options)
- [`--java-home`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--java-home)
- [`--jvm`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jvm)
- [`--jvm-index`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jvm-index)
- [`--jvm-index-os`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jvm-index-os)
- [`--jvm-index-arch`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jvm-index-arch)
- [`--javac-plugin`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--javac-plugin)
- [`--javac-option`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--javac-option)
- [`--bsp-debug-port`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bsp-debug-port)
- [Logging options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#logging-options)
- [`--quiet`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--quiet)
- [`--progress`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--progress)
- [Main class options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#main-class-options)
- [`--main-class`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--main-class)
- [`--main-class-ls`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--main-class-ls)
- [Markdown options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#markdown-options)
- [`--enable-markdown`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--enable-markdown)
- [Package options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#package-options)
- [`--output`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--output-3)
- [`--force`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-2)
- [`--library`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--library)
- [`--with-sources`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--with-sources)
- [`--doc`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--doc)
- [`--assembly`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--assembly)
- [`--preamble`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--preamble)
- [`--main-class-in-manifest`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--main-class-in-manifest)
- [`--spark`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--spark)
- [`--standalone`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--standalone)
- [`--deb`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--deb)
- [`--dmg`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dmg)
- [`--rpm`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--rpm)
- [`--msi`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--msi)
- [`--pkg`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--pkg)
- [`--docker`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker)
- [`--provided`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--provided)
- [`--default-scaladoc-options`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--default-scaladoc-options-1)
- [`--native-image`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-image)
- [Packager options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#packager-options)
- [`--version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--version)
- [`--logo-path`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--logo-path)
- [`--launcher-app`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--launcher-app)
- [`--description`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--description)
- [`--maintainer`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--maintainer)
- [`--debian-conflicts`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--debian-conflicts)
- [`--debian-dependencies`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--debian-dependencies)
- [`--deb-architecture`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--deb-architecture)
- [`--priority`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--priority)
- [`--section`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--section)
- [`--identifier`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--identifier)
- [`--license`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--license)
- [`--release`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--release)
- [`--rpm-architecture`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--rpm-architecture)
- [`--license-path`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--license-path)
- [`--product-name`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--product-name)
- [`--exit-dialog`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--exit-dialog)
- [`--suppress-validation`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--suppress-validation)
- [`--extra-config`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--extra-config)
- [`--is64-bits`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--is64-bits)
- [`--installer-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--installer-version)
- [`--wix-upgrade-code-guid`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--wix-upgrade-code-guid)
- [`--docker-from`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-from)
- [`--docker-image-registry`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-image-registry)
- [`--docker-image-repository`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-image-repository)
- [`--docker-image-tag`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-image-tag)
- [`--docker-cmd`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-cmd)
- [`--docker-extra-directories`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-extra-directories)
- [`--graalvm-java-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--graalvm-java-version)
- [`--graalvm-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--graalvm-version)
- [`--graalvm-jvm-id`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--graalvm-jvm-id)
- [`--graalvm-args`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--graalvm-args)
- [Pgp push pull options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-push-pull-options)
- [`--key-server`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--key-server)
- [Power options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#power-options)
- [`--power`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--power)
- [Publish options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-options)
- [`--working-dir`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--working-dir)
- [`--scala-version-suffix`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-version-suffix)
- [`--scala-platform-suffix`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-platform-suffix)
- [`--with-sources`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--with-sources-1)
- [`--doc`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--doc-1)
- [`--gpg-key`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--gpg-key)
- [`--signer`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--signer)
- [`--gpg-option`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--gpg-option)
- [`--ivy2-home`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ivy2-home)
- [`--checksum`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--checksum)
- [`--dummy`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dummy)
- [`--ivy2-local-like`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ivy2-local-like)
- [`--parallel-upload`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--parallel-upload)
- [Publish local options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-local-options)
- [`--m2`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--m2)
- [`--m2-home`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--m2-home)
- [Publish params options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-params-options)
- [`--organization`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--organization)
- [`--name`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--name-1)
- [`--module-name`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--module-name)
- [`--url`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--url)
- [`--license`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--license-1)
- [`--vcs`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--vcs)
- [`--description`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--description-1)
- [`--developer`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--developer)
- [`--secret-key`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--secret-key)
- [`--secret-key-password`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--secret-key-password)
- [`--ci`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ci)
- [Publish repository options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-repository-options)
- [`--publish-repository`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--publish-repository)
- [`--user`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--user)
- [`--password`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--password)
- [`--realm`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--realm)
- [Publish setup options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-setup-options)
- [`--public-key`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--public-key)
- [`--check`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--check-2)
- [`--token`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--token)
- [`--random-secret-key`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--random-secret-key)
- [`--random-secret-key-mail`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--random-secret-key-mail)
- [`--checks`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--checks)
- [`--check-workflow`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--check-workflow)
- [`--check-gitignore`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--check-gitignore)
- [`--dummy`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dummy-1)
- [Python options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#python-options)
- [`--python-setup`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--python-setup)
- [`--python`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--python)
- [`--scala-py-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-py-version)
- [Repl options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#repl-options)
- [`--ammonite`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ammonite)
- [`--ammonite-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ammonite-version)
- [`--ammonite-arg`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ammonite-arg)
- [`--repl-dry-run`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--repl-dry-run)
- [Run options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#run-options)
- [`--spark-submit`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--spark-submit)
- [`--submit-argument`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--submit-argument)
- [`--standalone-spark`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--standalone-spark)
- [`--hadoop-jar`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--hadoop-jar)
- [`--command`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--command)
- [`--scratch-dir`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scratch-dir)
- [`--use-manifest`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--use-manifest)
- [Scala.js options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalajs-options)
- [`--js`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js)
- [`--js-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-version)
- [`--js-mode`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-mode)
- [`--js-no-opt`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-no-opt)
- [`--js-module-kind`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-module-kind)
- [`--js-check-ir`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-check-ir)
- [`--js-emit-source-maps`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-emit-source-maps)
- [`--js-source-maps-path`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-source-maps-path)
- [`--js-es-module-import-map`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-es-module-import-map)
- [`--js-dom`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-dom)
- [`--js-emit-wasm`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-emit-wasm)
- [`--js-header`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-header)
- [`--js-allow-big-ints-for-longs`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-allow-big-ints-for-longs)
- [`--js-avoid-classes`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-avoid-classes)
- [`--js-avoid-lets-and-consts`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-avoid-lets-and-consts)
- [`--js-module-split-style`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-module-split-style)
- [`--js-small-module-for-package`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-small-module-for-package)
- [`--js-es-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-es-version)
- [`--js-linker-path`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-linker-path)
- [`--js-cli-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-cli-version)
- [`--js-cli-java-arg`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-cli-java-arg)
- [`--js-cli-on-jvm`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-cli-on-jvm)
- [Scala Native options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scala-native-options)
- [`--native`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native)
- [`--native-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-version)
- [`--native-mode`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-mode)
- [`--native-lto`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-lto)
- [`--native-gc`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-gc)
- [`--native-clang`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-clang)
- [`--native-clangpp`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-clangpp)
- [`--native-linking`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-linking)
- [`--native-linking-defaults`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-linking-defaults)
- [`--native-compile`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-compile)
- [`--native-c-compile`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-c-compile)
- [`--native-cpp-compile`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-cpp-compile)
- [`--native-compile-defaults`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-compile-defaults)
- [`--native-target`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-target)
- [`--embed-resources`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--embed-resources)
- [`--native-multithreading`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-multithreading)
- [Scalac options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalac-options)
- [`--args-file`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--args-file)
- [`--scalac-option`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalac-option)
- [Scalac extra options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalac-extra-options)
- [`--scalac-help`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalac-help)
- [`--scalac-verbose`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalac-verbose)
- [Scalafix options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalafix-options)
- [`--scalafix-conf`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafix-conf)
- [`--scalafix-arg`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafix-arg)
- [`--scalafix-rules`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafix-rules)
- [Scope options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scope-options)
- [`--test`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--test)
- [Secret options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#secret-options)
- [`--token`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--token-1)
- [`--repository`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--repository-1)
- [Secret create options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#secret-create-options)
- [`--public-key`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--public-key-1)
- [`--dummy`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dummy-2)
- [`--print-request`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--print-request)
- [Shared options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#shared-options)
- [`--scala-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-version)
- [`--scala-binary-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-binary-version)
- [`--extra-jars`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--extra-jars)
- [`--extra-compile-only-jars`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--extra-compile-only-jars)
- [`--extra-source-jars`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--extra-source-jars)
- [`--resource-dirs`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--resource-dirs)
- [`--as-jar`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--as-jar)
- [`--platform`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--platform)
- [`--scala-library`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-library)
- [`--with-compiler`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--with-compiler)
- [`--java`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--java)
- [`--runner`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--runner)
- [`--strict-bloop-json-check`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--strict-bloop-json-check)
- [`--compilation-output`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--compilation-output)
- [`--with-toolkit`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--with-toolkit)
- [`--exclude`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--exclude)
- [`--object-wrapper`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--object-wrapper)
- [Snippet options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#snippet-options)
- [`--script-snippet`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--script-snippet)
- [`--execute-script`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--execute-script)
- [`--scala-snippet`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-snippet)
- [`--execute-scala`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--execute-scala)
- [`--java-snippet`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--java-snippet)
- [`--execute-java`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--execute-java)
- [`--markdown-snippet`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--markdown-snippet)
- [`--execute-markdown`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--execute-markdown)
- [Source generator options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#source-generator-options)
- [`--use-build-info`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--use-build-info)
- [Suppress warning options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#suppress-warning-options)
- [`--suppress-directives-in-multiple-files-warning`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--suppress-directives-in-multiple-files-warning)
- [`--suppress-outdated-dependency-warning`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--suppress-outdated-dependency-warning)
- [Test options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#test-options)
- [`--test-frameworks`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--test-frameworks)
- [`--require-tests`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--require-tests)
- [`--test-only`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--test-only)
- [Uninstall options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#uninstall-options)
- [`--force`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-3)
- [`--skip-cache`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--skip-cache)
- [`--binary-name`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--binary-name)
- [`--bin-dir`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bin-dir)
- [Uninstall completions options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#uninstall-completions-options)
- [`--rc-file`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--rc-file-1)
- [`--banner`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--banner-1)
- [`--name`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--name-2)
- [Update options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#update-options)
- [`--binary-name`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--binary-name-1)
- [`--bin-dir`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bin-dir-1)
- [`--force`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-4)
- [`--is-internal-run`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--is-internal-run)
- [`--gh-token`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--gh-token)
- [Verbosity options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#verbosity-options)
- [`--verbose`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--verbose)
- [`--interactive`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--interactive)
- [`--actions`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--actions)
- [Version options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#version-options)
- [`--compute-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--compute-version)
- [`--project-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--project-version)
- [`--cli-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--cli-version)
- [`--scala-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-version-1)
- [`--gh-token`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--gh-token-1)
- [`--offline`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--offline-1)
- [Watch options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#watch-options)
- [`--watch`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--watch)
- [`--restart`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--restart)
- [`--watching`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--watching)
- [Internal options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#internal-options)
- [Add path options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#add-path-options)
- [`--title`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--title)
- [Bloop options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#bloop-options)
- [`--working-directory`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--working-directory)
- [Bloop start options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#bloop-start-options)
- [`--force`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-5)
- [Bsp options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#bsp-options)
- [`--json-options`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--json-options)
- [`--json-launcher-options`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--json-launcher-options)
- [`--envs`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--envs)
- [Bsp file options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#bsp-file-options)
- [`--bsp-directory`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bsp-directory)
- [`--bsp-name`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bsp-name)
- [Default file options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#default-file-options)
- [`--write`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--write)
- [`--list`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--list)
- [`--list-ids`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--list-ids)
- [`--force`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-6)
- [Input options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#input-options)
- [`--default-forbidden-directories`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--default-forbidden-directories)
- [`--forbid`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--forbid)
- [Install home options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#install-home-options)
- [`--scala-cli-binary-path`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-cli-binary-path)
- [`--force`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-7)
- [`--binary-name`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--binary-name-2)
- [`--env`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--env-1)
- [`--bin-dir`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bin-dir-2)
- [Pgp create options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-create-options)
- [`--email`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--email-1)
- [`--password`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--password-1)
- [`--dest`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dest)
- [`--pub-dest`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--pub-dest)
- [`--secret-dest`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--secret-dest)
- [`--verbose`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--verbose-1)
- [`--quiet`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--quiet-1)
- [Pgp key id options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-key-id-options)
- [`--fingerprint`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--fingerprint)
- [`--verbose`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--verbose-2)
- [Pgp pull options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-pull-options)
- [`--allow-empty`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--allow-empty)
- [Pgp push options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-push-options)
- [`--force`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-8)
- [`--allow-empty`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--allow-empty-1)
- [Pgp scala signing options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-scala-signing-options)
- [`--signing-cli-version`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--signing-cli-version)
- [`--signing-cli-java-arg`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--signing-cli-java-arg)
- [`--force-signing-externally`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-signing-externally)
- [`--force-jvm-signing-cli`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-jvm-signing-cli)
- [Pgp sign options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-sign-options)
- [`--password`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--password-2)
- [`--secret-key`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--secret-key-1)
- [`--force`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-9)
- [`--stdout`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--stdout)
- [Pgp verify options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-verify-options)
- [`--key`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--key)
- [Publish connection options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-connection-options)
- [`--connection-timeout-seconds`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--connection-timeout-seconds)
- [`--connection-timeout-retries`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--connection-timeout-retries)
- [`--response-timeout-seconds`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--response-timeout-seconds)
- [`--staging-repo-retries`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--staging-repo-retries)
- [`--staging-repo-wait-time-milis`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--staging-repo-wait-time-milis)
- [Semantic db options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#semantic-db-options)
- [`--semantic-db`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--semantic-db)
- [`--semantic-db-target-root`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--semantic-db-target-root)
- [`--semantic-db-source-root`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--semantic-db-source-root)
- [Setup IDE options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#setup-ide-options)
- [`--charset`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--charset)
- [Workspace options](https://scala-cli.virtuslab.org/docs/reference/cli-options/#workspace-options)
- [`--workspace`](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--workspace)
Documentation
- [Documentation](https://scala-cli.virtuslab.org/docs/overview)
Community
- [Discord](https://discord.gg/ScreHFr957)
More
- [GitHub](https://github.com/Virtuslab/scala-cli)
Copyright © 2021-2022 VirtusLab Sp. z. o. o. |
| Readable Markdown | This is a summary of options that are available for each subcommand of the `scala-cli` command.
## Scalac options forwarding[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalac-options-forwarding "Direct link to Scalac options forwarding")
All options that start with:
- `-g`
- `-language`
- `-opt`
- `-P`
- `-target`
- `-V`
- `-W`
- `-X`
- `-Y`
are assumed to be Scala compiler options and will be propagated to Scala Compiler. This applies to all commands that uses compiler directly or indirectly.
## Scalac options that are directly supported in scala CLI (so can be provided as is, without any prefixes etc.):[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalac-options-that-are-directly-supported-in-scala-cli-so-can-be-provided-as-is-without-any-prefixes-etc "Direct link to Scalac options that are directly supported in scala CLI (so can be provided as is, without any prefixes etc.):")
- `-encoding`
- `-release`
- `-color`
- `-nowarn`
- `-feature`
- `-deprecation`
- `-indent`
- `-no-indent`
- `-unchecked`
- `-rewrite`
- `-old-syntax`
- `-new-syntax`
## Benchmarking options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#benchmarking-options "Direct link to Benchmarking options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--jmh`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jmh "Direct link to --jmh")
Run JMH benchmarks
### `--jmh-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jmh-version "Direct link to --jmh-version")
Set JMH version (default: 1.37)
## Compilation server options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#compilation-server-options "Direct link to Compilation server options")
Available in commands:
[`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop exit`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-exit), [`bloop output`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-output), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall)
### `--bloop-bsp-protocol`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-bsp-protocol "Direct link to --bloop-bsp-protocol")
\[Internal\] Protocol to use to open a BSP connection with Bloop
### `--bloop-bsp-socket`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-bsp-socket "Direct link to --bloop-bsp-socket")
\[Internal\] Socket file to use to open a BSP connection with Bloop
### `--bloop-host`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-host "Direct link to --bloop-host")
\[Internal\] Host the compilation server should bind to
### `--bloop-port`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-port "Direct link to --bloop-port")
\[Internal\] Port the compilation server should bind to (pass `-1` to pick a random port)
### `--bloop-daemon-dir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-daemon-dir "Direct link to --bloop-daemon-dir")
\[Internal\] Daemon directory of the Bloop daemon (directory with lock, pid, and socket files)
### `--bloop-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-version "Direct link to --bloop-version")
\[Internal\] If Bloop isn't already running, the version we should start
### `--bloop-bsp-timeout`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-bsp-timeout "Direct link to --bloop-bsp-timeout")
\[Internal\] Maximum duration to wait for the BSP connection to be opened
### `--bloop-bsp-check-period`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-bsp-check-period "Direct link to --bloop-bsp-check-period")
\[Internal\] Duration between checks of the BSP connection state
### `--bloop-startup-timeout`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-startup-timeout "Direct link to --bloop-startup-timeout")
\[Internal\] Maximum duration to wait for the compilation server to start up
### `--bloop-default-java-opts`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-default-java-opts "Direct link to --bloop-default-java-opts")
\[Internal\] Include default JVM options for Bloop
### `--bloop-java-opt`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-java-opt "Direct link to --bloop-java-opt")
\[Internal\] Pass java options to use by Bloop server
### `--bloop-global-options-file`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-global-options-file "Direct link to --bloop-global-options-file")
\[Internal\] Bloop global options file
### `--bloop-jvm`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-jvm "Direct link to --bloop-jvm")
\[Internal\] JVM to use to start Bloop (e.g. 'system\|17', 'temurin:21', …)
### `--bloop-working-dir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bloop-working-dir "Direct link to --bloop-working-dir")
\[Internal\] Working directory for Bloop, if it needs to be started
### `--server`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--server "Direct link to --server")
Enable / disable usage of Bloop compilation server. Bloop is used by default so use `--server=false` to disable it. Disabling compilation server allows to test compilation in more controlled mannter (no caching or incremental compiler) but has a detrimental effect of performance.
## Compile options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#compile-options "Direct link to Compile options")
Available in commands:
[`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile)
### `--print-class-path`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--print-class-path "Direct link to --print-class-path")
Aliases: `-p`, `--print-classpath`
Print the resulting class path
## Config options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#config-options "Direct link to Config options")
Available in commands:
[`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config)
### `--dump`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dump "Direct link to --dump")
\[Internal\] Dump config DB as JSON
### `--create-pgp-key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--create-pgp-key "Direct link to --create-pgp-key")
Create PGP keychain in config
### `--pgp-password`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--pgp-password "Direct link to --pgp-password")
Aliases: `--passphrase`
A password used to encode the private PGP keychain
### `--email`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--email "Direct link to --email")
Email used to create the PGP keychains in config
### `--password-value`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--password-value "Direct link to --password-value")
When accessing config's content print the password value rather than how to get the password When saving an entry in config save the password value rather than how to get the password e.g. print/save the value of environment variable ENV\_VAR rather than "env:ENV\_VAR"
### `--unset`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--unset "Direct link to --unset")
Aliases: `--remove`
Remove an entry from config
### `--https-only`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--https-only "Direct link to --https-only")
For repository.credentials and publish.credentials, whether these credentials should be HTTPS only (default: true)
### `--match-host`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--match-host "Direct link to --match-host")
For repository.credentials, whether to use these credentials automatically based on the host
### `--optional`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--optional "Direct link to --optional")
For repository.credentials, whether to use these credentials are optional
### `--pass-on-redirect`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--pass-on-redirect "Direct link to --pass-on-redirect")
For repository.credentials, whether to use these credentials should be passed upon redirection
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force "Direct link to --force")
Aliases: `-f`
Force overwriting values for key
## Coursier options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#coursier-options "Direct link to Coursier options")
Available in commands:
[`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop exit`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-exit), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall)
### `--ttl`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ttl "Direct link to --ttl")
\[Internal\] Specify a TTL for changing dependencies, such as snapshots
### `--cache`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--cache "Direct link to --cache")
\[Internal\] Set the coursier cache location
### `--coursier-validate-checksums`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--coursier-validate-checksums "Direct link to --coursier-validate-checksums")
\[Internal\] Enable checksum validation of artifacts downloaded by coursier
### `--offline`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--offline "Direct link to --offline")
Disable using the network to download artifacts, use the local cache only
## Cross options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#cross-options "Direct link to Cross options")
Available in commands:
[`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--cross`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--cross "Direct link to --cross")
Run given command against all provided Scala versions and/or platforms
## Debug options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#debug-options "Direct link to Debug options")
Available in commands:
[`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--debug`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--debug "Direct link to --debug")
Turn debugging on
### `--debug-port`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--debug-port "Direct link to --debug-port")
Debug port (5005 by default)
### `--debug-mode`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--debug-mode "Direct link to --debug-mode")
Debug mode (attach by default)
## Dependency options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#dependency-options "Direct link to Dependency options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--dependency`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dependency "Direct link to --dependency")
Aliases: `--dep`
Add dependencies
### `--compile-only-dependency`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--compile-only-dependency "Direct link to --compile-only-dependency")
Aliases: `--compile-dep`, `--compile-lib`
Add compile-only dependencies
### `--repository`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--repository "Direct link to --repository")
Aliases: `-r`, `--repo`
Add repositories for dependency resolution.
Accepts predefined repositories supported by Coursier (like `sonatype:snapshots`, `ivy2Local` or `m2Local`) or a URL of the root of Maven repository
### `--compiler-plugin`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--compiler-plugin "Direct link to --compiler-plugin")
Aliases: `-P`, `--plugin`
Add compiler plugin dependencies
## Dependency update options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#dependency-update-options "Direct link to Dependency update options")
Available in commands:
[`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update)
### `--all`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--all "Direct link to --all")
Update all dependencies if a newer version was released
## Doc options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#doc-options "Direct link to Doc options")
Available in commands:
[`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc)
### `--output`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--output "Direct link to --output")
Aliases: `-o`
Set the destination path
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-1 "Direct link to --force-1")
Aliases: `-f`
Overwrite the destination directory, if it exists
### `--default-scaladoc-options`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--default-scaladoc-options "Direct link to --default-scaladoc-options")
Aliases: `--default-scaladoc-opts`
Control if Scala CLI should use default options for scaladoc, true by default. Use `--default-scaladoc-opts:false` to not include default options.
## Export options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#export-options "Direct link to Export options")
Available in commands:
[`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export)
### `--sbt`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--sbt "Direct link to --sbt")
Sets the export format to SBT
### `--maven`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--maven "Direct link to --maven")
Aliases: `--mvn`
Sets the export format to Maven
### `--mill`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mill "Direct link to --mill")
Sets the export format to Mill
### `--json`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--json "Direct link to --json")
Sets the export format to Json
### `--sbt-setting`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--sbt-setting "Direct link to --sbt-setting")
Aliases: `--setting`
### `--project`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--project "Direct link to --project")
Aliases: `-p`
Project name to be used on Mill build file
### `--sbt-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--sbt-version "Direct link to --sbt-version")
Version of SBT to be used for the export (1.12.4 by default)
### `--mill-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mill-version "Direct link to --mill-version")
Version of Mill to be used for the export (1.1.3 by default)
### `--mvn-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-version "Direct link to --mvn-version")
Version of Maven Compiler Plugin to be used for the export (3.8.1 by default)
### `--mvn-scala-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-scala-version "Direct link to --mvn-scala-version")
Version of Maven Scala Plugin to be used for the export (4.9.1 by default)
### `--mvn-exec-plugin-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-exec-plugin-version "Direct link to --mvn-exec-plugin-version")
Version of Maven Exec Plugin to be used for the export (3.3.0 by default)
### `--mvn-app-artifact-id`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-app-artifact-id "Direct link to --mvn-app-artifact-id")
ArtifactId to be used for the maven export
### `--mvn-app-group-id`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-app-group-id "Direct link to --mvn-app-group-id")
GroupId to be used for the maven export
### `--mvn-app-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--mvn-app-version "Direct link to --mvn-app-version")
Version to be used for the maven export
### `--output`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--output-1 "Direct link to --output-1")
Aliases: `-o`
## Fix options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#fix-options "Direct link to Fix options")
Available in commands:
[`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix)
### `--check`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--check "Direct link to --check")
Fail the invocation if rewrites are needed
### `--enable-scalafix`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--enable-scalafix "Direct link to --enable-scalafix")
Aliases: `--scalafix`
Enable running Scalafix rules (enabled by default)
### `--enable-built-in-rules`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--enable-built-in-rules "Direct link to --enable-built-in-rules")
Aliases: `--built-in`, `--built-in-rules`, `--enable-built-in`
Enable running built-in rules (enabled by default)
## Fmt options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#fmt-options "Direct link to Fmt options")
Available in commands:
[`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt)
### `--check`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--check-1 "Direct link to --check-1")
Check if sources are well formatted
### `--respect-project-filters`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--respect-project-filters "Direct link to --respect-project-filters")
Use project filters defined in the configuration. Turned on by default, use `--respect-project-filters:false` to disable it.
### `--save-scalafmt-conf`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--save-scalafmt-conf "Direct link to --save-scalafmt-conf")
Saves .scalafmt.conf file if it was created or overwritten
### `--os-arch-suffix`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--os-arch-suffix "Direct link to --os-arch-suffix")
\[Internal\]
### `--scalafmt-tag`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-tag "Direct link to --scalafmt-tag")
\[Internal\]
### `--scalafmt-github-org-name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-github-org-name "Direct link to --scalafmt-github-org-name")
\[Internal\]
### `--scalafmt-extension`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-extension "Direct link to --scalafmt-extension")
\[Internal\]
### `--scalafmt-launcher`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-launcher "Direct link to --scalafmt-launcher")
\[Internal\]
### `--scalafmt-arg`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-arg "Direct link to --scalafmt-arg")
Aliases: `-F`
Pass an argument to scalafmt.
### `--scalafmt-conf`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-conf "Direct link to --scalafmt-conf")
Aliases: `--scalafmt-config`
Custom path to the scalafmt configuration file.
### `--scalafmt-conf-str`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-conf-str "Direct link to --scalafmt-conf-str")
Aliases: `--scalafmt-conf-snippet`, `--scalafmt-config-str`
Pass configuration as a string.
### `--scalafmt-dialect`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-dialect "Direct link to --scalafmt-dialect")
Aliases: `--dialect`
Pass a global dialect for scalafmt. This overrides whatever value is configured in the .scalafmt.conf file or inferred based on Scala version used.
### `--scalafmt-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafmt-version "Direct link to --scalafmt-version")
Aliases: `--fmt-version`
Pass scalafmt version before running it (3.10.7 by default). If passed, this overrides whatever value is configured in the .scalafmt.conf file.
## Global suppress warning options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#global-suppress-warning-options "Direct link to Global suppress warning options")
Available in commands:
[`add-path`](https://scala-cli.virtuslab.org/docs/reference/commands#add-path), [`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop exit`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-exit), [`bloop output`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-output), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`clean`](https://scala-cli.virtuslab.org/docs/reference/commands#clean), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`default-file`](https://scala-cli.virtuslab.org/docs/reference/commands#default-file), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`directories`](https://scala-cli.virtuslab.org/docs/reference/commands#directories), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`help`](https://scala-cli.virtuslab.org/docs/reference/commands#help), [`install completions` , `install-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#install-completions), [`install-home`](https://scala-cli.virtuslab.org/docs/reference/commands#install-home), [`new`](https://scala-cli.virtuslab.org/docs/reference/commands#new), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp pull`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-pull), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create), [`github secret list` , `gh secret list`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-list), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall), [`uninstall completions` , `uninstall-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall-completions), [`update`](https://scala-cli.virtuslab.org/docs/reference/commands#update), [`version`](https://scala-cli.virtuslab.org/docs/reference/commands#version)
### `--suppress-experimental-feature-warning`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--suppress-experimental-feature-warning "Direct link to --suppress-experimental-feature-warning")
Aliases: `--suppress-experimental-warning`
Suppress warnings about using experimental features
### `--suppress-deprecated-feature-warning`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--suppress-deprecated-feature-warning "Direct link to --suppress-deprecated-feature-warning")
Aliases: `--suppress-deprecated-feature-warnings`, `--suppress-deprecated-warning`, `--suppress-deprecated-warnings`
Suppress warnings about using deprecated features
## Help options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#help-options "Direct link to Help options")
Available in commands:
[`add-path`](https://scala-cli.virtuslab.org/docs/reference/commands#add-path), [`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop exit`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-exit), [`bloop output`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-output), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`clean`](https://scala-cli.virtuslab.org/docs/reference/commands#clean), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`default-file`](https://scala-cli.virtuslab.org/docs/reference/commands#default-file), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`directories`](https://scala-cli.virtuslab.org/docs/reference/commands#directories), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`help`](https://scala-cli.virtuslab.org/docs/reference/commands#help), [`install completions` , `install-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#install-completions), [`install-home`](https://scala-cli.virtuslab.org/docs/reference/commands#install-home), [`new`](https://scala-cli.virtuslab.org/docs/reference/commands#new), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp create`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-create), [`pgp key-id`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-key-id), [`pgp pull`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-pull), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`pgp sign`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-sign), [`pgp verify`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-verify), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create), [`github secret list` , `gh secret list`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-list), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall), [`uninstall completions` , `uninstall-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall-completions), [`update`](https://scala-cli.virtuslab.org/docs/reference/commands#update), [`version`](https://scala-cli.virtuslab.org/docs/reference/commands#version)
### `--usage`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--usage "Direct link to --usage")
Print usage and exit
### `--help`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help "Direct link to --help")
Aliases: `-h`, `-help`
Print help message and exit
### `--help-full`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-full "Direct link to --help-full")
Aliases: `--full-help`, `-full-help`, `-help-full`
Print help message, including hidden options, and exit
## Help group options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#help-group-options "Direct link to Help group options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--help-envs`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-envs "Direct link to --help-envs")
Aliases: `--env-help`, `--envs-help`, `--help-env`
Show environment variable help
### `--help-js`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-js "Direct link to --help-js")
Show options for ScalaJS
### `--help-native`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-native "Direct link to --help-native")
Show options for ScalaNative
### `--help-scaladoc`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-scaladoc "Direct link to --help-scaladoc")
Aliases: `--doc-help`, `--help-doc`, `--scaladoc-help`
Show options for Scaladoc
### `--help-repl`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-repl "Direct link to --help-repl")
Aliases: `--repl-help`
Show options for Scala REPL
### `--help-scalafmt`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--help-scalafmt "Direct link to --help-scalafmt")
Aliases: `--fmt-help`, `--help-fmt`, `--scalafmt-help`
Show options for Scalafmt
## Install completions options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#install-completions-options "Direct link to Install completions options")
Available in commands:
[`install completions` , `install-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#install-completions)
### `--format`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--format "Direct link to --format")
Aliases: `--shell`
Name of the shell, either zsh or bash
### `--rc-file`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--rc-file "Direct link to --rc-file")
Path to `*rc` file, defaults to `.bashrc` or `.zshrc` depending on shell
### `--output`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--output-2 "Direct link to --output-2")
Aliases: `-o`
Completions output directory
\[Internal\] Custom banner in comment placed in rc file
### `--name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--name "Direct link to --name")
\[Internal\] Custom completions name
### `--env`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--env "Direct link to --env")
Print completions to stdout
## Java options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#java-options "Direct link to Java options")
Available in commands:
[`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--java-opt`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--java-opt "Direct link to --java-opt")
Aliases: `-J`
Set Java options, such as `-Xmx1g`
## Java prop options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#java-prop-options "Direct link to Java prop options")
Available in commands:
[`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--java-prop-option`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--java-prop-option "Direct link to --java-prop-option")
Aliases: `--java-prop`
Add java properties. Note that options equal `-Dproperty=value` are assumed to be java properties and don't require to be passed after `--java-prop`.
## Jvm options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#jvm-options "Direct link to Jvm options")
Available in commands:
[`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--java-home`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--java-home "Direct link to --java-home")
Set the Java home directory
### `--jvm`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jvm "Direct link to --jvm")
Aliases: `-j`
Use a specific JVM, such as `14`, `temurin:11`, or `graalvm:21`, or `system`. scala-cli uses [coursier](https://get-coursier.io/) to fetch JVMs, so you can use `cs java --available` to list the available JVMs.
### `--jvm-index`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jvm-index "Direct link to --jvm-index")
\[Internal\] JVM index URL
### `--jvm-index-os`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jvm-index-os "Direct link to --jvm-index-os")
\[Internal\] Operating system to use when looking up in the JVM index
### `--jvm-index-arch`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--jvm-index-arch "Direct link to --jvm-index-arch")
\[Internal\] CPU architecture to use when looking up in the JVM index
### `--javac-plugin`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--javac-plugin "Direct link to --javac-plugin")
\[Internal\] Javac plugin dependencies or files
### `--javac-option`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--javac-option "Direct link to --javac-option")
Aliases: `--javac-opt`
\[Internal\] Javac options
### `--bsp-debug-port`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bsp-debug-port "Direct link to --bsp-debug-port")
\[Internal\] Port for BSP debugging
## Logging options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#logging-options "Direct link to Logging options")
Available in commands:
[`add-path`](https://scala-cli.virtuslab.org/docs/reference/commands#add-path), [`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop exit`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-exit), [`bloop output`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-output), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`clean`](https://scala-cli.virtuslab.org/docs/reference/commands#clean), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`default-file`](https://scala-cli.virtuslab.org/docs/reference/commands#default-file), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`directories`](https://scala-cli.virtuslab.org/docs/reference/commands#directories), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`help`](https://scala-cli.virtuslab.org/docs/reference/commands#help), [`install completions` , `install-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#install-completions), [`install-home`](https://scala-cli.virtuslab.org/docs/reference/commands#install-home), [`new`](https://scala-cli.virtuslab.org/docs/reference/commands#new), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp pull`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-pull), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create), [`github secret list` , `gh secret list`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-list), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall), [`uninstall completions` , `uninstall-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall-completions), [`update`](https://scala-cli.virtuslab.org/docs/reference/commands#update), [`version`](https://scala-cli.virtuslab.org/docs/reference/commands#version)
### `--quiet`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--quiet "Direct link to --quiet")
Aliases: `-q`
Decrease logging verbosity
### `--progress`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--progress "Direct link to --progress")
Use progress bars
## Main class options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#main-class-options "Direct link to Main class options")
Available in commands:
[`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang)
### `--main-class`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--main-class "Direct link to --main-class")
Aliases: `-M`
Specify which main class to run
### `--main-class-ls`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--main-class-ls "Direct link to --main-class-ls")
Aliases: `--list-main-class`, `--list-main-classes`, `--list-main-method`, `--list-main-methods`, `--main-class-list`, `--main-method-list`, `--main-method-ls`
List main classes available in the current context
## Markdown options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#markdown-options "Direct link to Markdown options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--enable-markdown`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--enable-markdown "Direct link to --enable-markdown")
Aliases: `--markdown`, `--md`
Enable markdown support.
## Package options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#package-options "Direct link to Package options")
Available in commands:
[`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package)
### `--output`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--output-3 "Direct link to --output-3")
Aliases: `-o`
Set the destination path
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-2 "Direct link to --force-2")
Aliases: `-f`
Overwrite the destination file, if it exists
### `--library`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--library "Direct link to --library")
Generate a library JAR rather than an executable JAR
### `--with-sources`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--with-sources "Direct link to --with-sources")
Aliases: `--jar-sources`, \[deprecated\] `--sources`, `--sources-jar`, \[deprecated\] `--src`
Generate a source JAR rather than an executable JAR
### `--doc`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--doc "Direct link to --doc")
Aliases: `--javadoc`, `--scaladoc`
Generate a scaladoc JAR rather than an executable JAR
### `--assembly`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--assembly "Direct link to --assembly")
Generate an assembly JAR
### `--preamble`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--preamble "Direct link to --preamble")
For assembly JAR, whether to add a bash / bat preamble
### `--main-class-in-manifest`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--main-class-in-manifest "Direct link to --main-class-in-manifest")
\[Internal\] For assembly JAR, whether to specify a main class in the JAR manifest
### `--spark`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--spark "Direct link to --spark")
\[Internal\] Generate an assembly JAR for Spark (assembly that doesn't contain Spark, nor any of its dependencies)
### `--standalone`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--standalone "Direct link to --standalone")
Package standalone JARs
### `--deb`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--deb "Direct link to --deb")
Build Debian package, available only on Linux
### `--dmg`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dmg "Direct link to --dmg")
Build dmg package, available only on macOS
### `--rpm`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--rpm "Direct link to --rpm")
Build rpm package, available only on Linux
### `--msi`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--msi "Direct link to --msi")
Build msi package, available only on Windows
### `--pkg`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--pkg "Direct link to --pkg")
Build pkg package, available only on macOS
### `--docker`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker "Direct link to --docker")
Build Docker image
### `--provided`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--provided "Direct link to --provided")
\[Internal\] Exclude modules *and their transitive dependencies* from the JAR to be packaged
### `--default-scaladoc-options`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--default-scaladoc-options-1 "Direct link to --default-scaladoc-options-1")
Aliases: `--default-scaladoc-opts`
Use default scaladoc options
### `--native-image`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-image "Direct link to --native-image")
Aliases: `--graal`
Build GraalVM native image
## Packager options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#packager-options "Direct link to Packager options")
Available in commands:
[`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package)
### `--version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--version "Direct link to --version")
Set the version of the generated package
### `--logo-path`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--logo-path "Direct link to --logo-path")
Path to application logo in PNG format, it will be used to generate icon and banner/dialog in msi installer
### `--launcher-app`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--launcher-app "Direct link to --launcher-app")
Set launcher app name, which will be linked to the PATH
### `--description`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--description "Direct link to --description")
### `--maintainer`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--maintainer "Direct link to --maintainer")
Aliases: `-m`
This should contain names and email addresses of co-maintainers of the package
### `--debian-conflicts`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--debian-conflicts "Direct link to --debian-conflicts")
The list of Debian package that this package is not compatible with
### `--debian-dependencies`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--debian-dependencies "Direct link to --debian-dependencies")
The list of Debian packages that this package depends on
### `--deb-architecture`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--deb-architecture "Direct link to --deb-architecture")
Architectures that are supported by the repository (default: all)
### `--priority`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--priority "Direct link to --priority")
This field represents how important it is that the user have the package installed
### `--section`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--section "Direct link to --section")
This field specifies an application area into which the package has been classified
### `--identifier`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--identifier "Direct link to --identifier")
CF Bundle Identifier
### `--license`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--license "Direct link to --license")
Licenses that are supported by the repository (list of licenses: <https://spdx.org/licenses/>)
### `--release`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--release "Direct link to --release")
The number of times this version of the software was released (default: 1)
### `--rpm-architecture`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--rpm-architecture "Direct link to --rpm-architecture")
Architectures that are supported by the repository (default: noarch)
### `--license-path`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--license-path "Direct link to --license-path")
Path to the license file
### `--product-name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--product-name "Direct link to --product-name")
Name of product (default: Scala packager)
### `--exit-dialog`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--exit-dialog "Direct link to --exit-dialog")
Text that will be displayed on the exit dialog
### `--suppress-validation`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--suppress-validation "Direct link to --suppress-validation")
Suppress Wix ICE validation (required for users that are neither interactive, not local administrators)
Path to extra WIX configuration content
### `--is64-bits`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--is64-bits "Direct link to --is64-bits")
Aliases: `--64`
Whether a 64-bit executable is being packaged
### `--installer-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--installer-version "Direct link to --installer-version")
WIX installer version
### `--wix-upgrade-code-guid`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--wix-upgrade-code-guid "Direct link to --wix-upgrade-code-guid")
The GUID to identify that the windows package can be upgraded.
### `--docker-from`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-from "Direct link to --docker-from")
Building the container from base image
### `--docker-image-registry`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-image-registry "Direct link to --docker-image-registry")
The image registry; if empty, it will use the default registry
### `--docker-image-repository`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-image-repository "Direct link to --docker-image-repository")
The image repository
### `--docker-image-tag`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-image-tag "Direct link to --docker-image-tag")
The image tag; the default tag is `latest`
### `--docker-cmd`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--docker-cmd "Direct link to --docker-cmd")
Allows to override the executable used to run the application in docker, otherwise it defaults to sh for the JVM platform and node for the JS platform
Extra directories to be added to the docker image
### `--graalvm-java-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--graalvm-java-version "Direct link to --graalvm-java-version")
GraalVM Java major version to use to build GraalVM native images (17 by default)
### `--graalvm-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--graalvm-version "Direct link to --graalvm-version")
GraalVM version to use to build GraalVM native images (17.0.9 by default)
### `--graalvm-jvm-id`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--graalvm-jvm-id "Direct link to --graalvm-jvm-id")
JVM id of GraalVM distribution to build GraalVM native images (like "graalvm-java17:22.0.0")
### `--graalvm-args`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--graalvm-args "Direct link to --graalvm-args")
Pass args to GraalVM
## Pgp push pull options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-push-pull-options "Direct link to Pgp push pull options")
Available in commands:
[`pgp pull`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-pull), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup)
### `--key-server`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--key-server "Direct link to --key-server")
Key server to push / pull keys from
## Power options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#power-options "Direct link to Power options")
Available in commands:
[`add-path`](https://scala-cli.virtuslab.org/docs/reference/commands#add-path), [`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop exit`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-exit), [`bloop output`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-output), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`clean`](https://scala-cli.virtuslab.org/docs/reference/commands#clean), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`default-file`](https://scala-cli.virtuslab.org/docs/reference/commands#default-file), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`directories`](https://scala-cli.virtuslab.org/docs/reference/commands#directories), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`help`](https://scala-cli.virtuslab.org/docs/reference/commands#help), [`install completions` , `install-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#install-completions), [`install-home`](https://scala-cli.virtuslab.org/docs/reference/commands#install-home), [`new`](https://scala-cli.virtuslab.org/docs/reference/commands#new), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp pull`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-pull), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create), [`github secret list` , `gh secret list`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-list), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall), [`uninstall completions` , `uninstall-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall-completions), [`update`](https://scala-cli.virtuslab.org/docs/reference/commands#update), [`version`](https://scala-cli.virtuslab.org/docs/reference/commands#version)
### `--power`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--power "Direct link to --power")
Allows to use restricted & experimental features
## Publish options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-options "Direct link to Publish options")
Available in commands:
[`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local)
### `--working-dir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--working-dir "Direct link to --working-dir")
\[Internal\] Directory where temporary files for publishing should be written
### `--scala-version-suffix`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-version-suffix "Direct link to --scala-version-suffix")
\[Internal\] Scala version suffix to append to the module name, like "\_2.13" or "\_3"
### `--scala-platform-suffix`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-platform-suffix "Direct link to --scala-platform-suffix")
\[Internal\] Scala platform suffix to append to the module name, like "\_sjs1" or "\_native0.4"
### `--with-sources`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--with-sources-1 "Direct link to --with-sources-1")
Aliases: `--jar-sources`, \[deprecated\] `--sources`, `--sources-jar`
Whether to build and publish source JARs
### `--doc`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--doc-1 "Direct link to --doc-1")
Aliases: `--javadoc`, `--scaladoc`
Whether to build and publish doc JARs
### `--gpg-key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--gpg-key "Direct link to --gpg-key")
Aliases: `-K`
ID of the GPG key to use to sign artifacts
### `--signer`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--signer "Direct link to --signer")
Method to use to sign artifacts
### `--gpg-option`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--gpg-option "Direct link to --gpg-option")
Aliases: `-G`, `--gpg-opt`
gpg command-line options
### `--ivy2-home`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ivy2-home "Direct link to --ivy2-home")
Set Ivy 2 home directory
### `--checksum`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--checksum "Direct link to --checksum")
\[Internal\]
### `--dummy`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dummy "Direct link to --dummy")
Proceed as if publishing, but do not upload / write artifacts to the remote repository
### `--ivy2-local-like`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ivy2-local-like "Direct link to --ivy2-local-like")
\[Internal\]
### `--parallel-upload`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--parallel-upload "Direct link to --parallel-upload")
\[Internal\]
## Publish local options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-local-options "Direct link to Publish local options")
Available in commands:
[`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local)
### `--m2`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--m2 "Direct link to --m2")
Aliases: `--maven-local`
Publish to the local Maven repository (defaults to ~/.m2/repository) instead of Ivy2 local
### `--m2-home`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--m2-home "Direct link to --m2-home")
Set the local Maven repository path (defaults to ~/.m2/repository)
## Publish params options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-params-options "Direct link to Publish params options")
Available in commands:
[`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup)
### `--organization`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--organization "Direct link to --organization")
Organization to publish artifacts under
### `--name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--name-1 "Direct link to --name-1")
Name to publish artifacts as
### `--module-name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--module-name "Direct link to --module-name")
Final name to publish artifacts as, including Scala version and platform suffixes if any
### `--url`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--url "Direct link to --url")
URL to put in publishing metadata
### `--license`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--license-1 "Direct link to --license-1")
License to put in publishing metadata
### `--vcs`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--vcs "Direct link to --vcs")
VCS information to put in publishing metadata
### `--description`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--description-1 "Direct link to --description-1")
Description to put in publishing metadata
### `--developer`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--developer "Direct link to --developer")
Developer(s) to add in publishing metadata, like "alex\|Alex\|[https://alex.info](https://alex.info/)" or "alex\|Alex\|<https://alex.info%7Calex@alex.me>"
### `--secret-key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--secret-key "Direct link to --secret-key")
Secret key to use to sign artifacts with Bouncy Castle
### `--secret-key-password`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--secret-key-password "Direct link to --secret-key-password")
Aliases: `--secret-key-pass`
Password of secret key to use to sign artifacts with Bouncy Castle
### `--ci`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ci "Direct link to --ci")
Use or setup publish parameters meant to be used on continuous integration
## Publish repository options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-repository-options "Direct link to Publish repository options")
Available in commands:
[`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup)
### `--publish-repository`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--publish-repository "Direct link to --publish-repository")
Aliases: `-R`, `--publish-repo`
Repository to publish to
### `--user`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--user "Direct link to --user")
User to use with publishing repository
### `--password`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--password "Direct link to --password")
Password to use with publishing repository
### `--realm`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--realm "Direct link to --realm")
Realm to use when passing credentials to publishing repository
## Publish setup options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-setup-options "Direct link to Publish setup options")
Available in commands:
[`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup)
### `--public-key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--public-key "Direct link to --public-key")
Public key to use to verify artifacts (to be uploaded to a key server)
### `--check`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--check-2 "Direct link to --check-2")
Check if some options for publishing are missing, and exit with non-zero return code if that's the case
### `--token`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--token "Direct link to --token")
GitHub token to use to upload secrets to GitHub - password encoded
### `--random-secret-key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--random-secret-key "Direct link to --random-secret-key")
Generate a random key pair for publishing, with a secret key protected by a random password
### `--random-secret-key-mail`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--random-secret-key-mail "Direct link to --random-secret-key-mail")
When generating a random key pair, the mail to associate to it
### `--checks`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--checks "Direct link to --checks")
The option groups to check - can be "all", or a comma-separated list of "core", "signing", "repo", "extra"
### `--check-workflow`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--check-workflow "Direct link to --check-workflow")
Whether to check if a GitHub workflow already exists (one for publishing is written if none is found)
### `--check-gitignore`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--check-gitignore "Direct link to --check-gitignore")
Whether to check if a .gitignore file already exists (one is written if none is found)
### `--dummy`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dummy-1 "Direct link to --dummy-1")
Dummy mode - don't upload any secret to GitHub
## Python options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#python-options "Direct link to Python options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--python-setup`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--python-setup "Direct link to --python-setup")
Set Java options so that Python can be loaded
### `--python`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--python "Direct link to --python")
Aliases: `--py`
Enable Python support via ScalaPy
### `--scala-py-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-py-version "Direct link to --scala-py-version")
Aliases: `--scalapy-version`
Set ScalaPy version (0.5.3 by default)
## Repl options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#repl-options "Direct link to Repl options")
Available in commands:
[`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl)
### `--ammonite`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ammonite "Direct link to --ammonite")
Aliases: `-A`, `--amm`
Use Ammonite (instead of the default Scala REPL)
### `--ammonite-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ammonite-version "Direct link to --ammonite-version")
Aliases: `--ammonite-ver`
Set the Ammonite version (3.0.8 by default)
### `--ammonite-arg`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--ammonite-arg "Direct link to --ammonite-arg")
Aliases: `-a`
\[Internal\] Provide arguments for ammonite repl
### `--repl-dry-run`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--repl-dry-run "Direct link to --repl-dry-run")
\[Internal\] Don't actually run the REPL, just fetch it
## Run options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#run-options "Direct link to Run options")
Available in commands:
[`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang)
### `--spark-submit`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--spark-submit "Direct link to --spark-submit")
Aliases: `--spark`
\[Internal\] Run as a Spark job, using the spark-submit command
### `--submit-argument`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--submit-argument "Direct link to --submit-argument")
Aliases: `--submit-arg`
\[Internal\] Spark-submit arguments
### `--standalone-spark`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--standalone-spark "Direct link to --standalone-spark")
Aliases: `--spark-standalone`
Run as a Spark job, using a vanilla Spark distribution downloaded by Scala CLI
### `--hadoop-jar`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--hadoop-jar "Direct link to --hadoop-jar")
Aliases: `--hadoop`
Run as a Hadoop job, using the "hadoop jar" command
### `--command`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--command "Direct link to --command")
Print the command that would have been run (one argument per line), rather than running it
### `--scratch-dir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scratch-dir "Direct link to --scratch-dir")
Temporary / working directory where to write generated launchers
### `--use-manifest`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--use-manifest "Direct link to --use-manifest")
\[Internal\] Run Java commands using a manifest-based class path (shortens command length)
## Scala.js options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalajs-options "Direct link to Scala.js options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--js`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js "Direct link to --js")
Enable Scala.js. To show more options for Scala.js pass `--help-js`
### `--js-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-version "Direct link to --js-version")
The Scala.js version (1.20.2 by default).
### `--js-mode`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-mode "Direct link to --js-mode")
The Scala.js mode, for `fastLinkJS` use one of \[`dev`, `fastLinkJS` or `fast`\], for `fullLinkJS` use one of \[`release`, `fullLinkJS`, `full`\]
### `--js-no-opt`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-no-opt "Direct link to --js-no-opt")
\[Internal\] Disable optimalisation for Scala.js, overrides `--js-mode`
### `--js-module-kind`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-module-kind "Direct link to --js-module-kind")
The Scala.js module kind: commonjs/common, esmodule/es, nomodule/none
### `--js-check-ir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-check-ir "Direct link to --js-check-ir")
### `--js-emit-source-maps`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-emit-source-maps "Direct link to --js-emit-source-maps")
Emit source maps
### `--js-source-maps-path`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-source-maps-path "Direct link to --js-source-maps-path")
Set the destination path of source maps
### `--js-es-module-import-map`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-es-module-import-map "Direct link to --js-es-module-import-map")
A file relative to the root directory containing import maps for ES module imports
### `--js-dom`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-dom "Direct link to --js-dom")
Enable jsdom
### `--js-emit-wasm`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-emit-wasm "Direct link to --js-emit-wasm")
Emit WASM
A header that will be added at the top of generated .js files
### `--js-allow-big-ints-for-longs`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-allow-big-ints-for-longs "Direct link to --js-allow-big-ints-for-longs")
Primitive Longs *may* be compiled as primitive JavaScript bigints
### `--js-avoid-classes`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-avoid-classes "Direct link to --js-avoid-classes")
Avoid class'es when using functions and prototypes has the same observable semantics.
### `--js-avoid-lets-and-consts`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-avoid-lets-and-consts "Direct link to --js-avoid-lets-and-consts")
Avoid lets and consts when using vars has the same observable semantics.
### `--js-module-split-style`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-module-split-style "Direct link to --js-module-split-style")
The Scala.js module split style: fewestmodules, smallestmodules, smallmodulesfor
### `--js-small-module-for-package`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-small-module-for-package "Direct link to --js-small-module-for-package")
Create as many small modules as possible for the classes in the passed packages and their subpackages.
### `--js-es-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-es-version "Direct link to --js-es-version")
The Scala.js ECMA Script version: es5\_1, es2015, es2016, es2017, es2018, es2019, es2020, es2021
### `--js-linker-path`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-linker-path "Direct link to --js-linker-path")
\[Internal\] Path to the Scala.js linker
### `--js-cli-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-cli-version "Direct link to --js-cli-version")
\[Internal\] Scala.js CLI version to use for linking (1.20.2 by default).
### `--js-cli-java-arg`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-cli-java-arg "Direct link to --js-cli-java-arg")
\[Internal\] Scala.js CLI Java options
### `--js-cli-on-jvm`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--js-cli-on-jvm "Direct link to --js-cli-on-jvm")
\[Internal\] Whether to run the Scala.js CLI on the JVM or using a native executable
## Scala Native options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scala-native-options "Direct link to Scala Native options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--native`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native "Direct link to --native")
Enable Scala Native. To show more options for Scala Native pass `--help-native`
### `--native-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-version "Direct link to --native-version")
Set the Scala Native version (0.5.10 by default).
### `--native-mode`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-mode "Direct link to --native-mode")
Set Scala Native compilation mode (debug by default): debug, release-fast, release-size, release-full
### `--native-lto`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-lto "Direct link to --native-lto")
Link-time optimisation mode (none by default): none, full, thin
### `--native-gc`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-gc "Direct link to --native-gc")
Set the Scala Native garbage collector (immix by default): immix, commix, boehm, none
### `--native-clang`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-clang "Direct link to --native-clang")
Path to the Clang command
### `--native-clangpp`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-clangpp "Direct link to --native-clangpp")
Path to the Clang++ command
### `--native-linking`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-linking "Direct link to --native-linking")
Extra options passed to `clang` verbatim during linking
### `--native-linking-defaults`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-linking-defaults "Direct link to --native-linking-defaults")
\[Internal\] Use default linking settings
### `--native-compile`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-compile "Direct link to --native-compile")
List of compile options
### `--native-c-compile`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-c-compile "Direct link to --native-c-compile")
List of compile options (C files only)
### `--native-cpp-compile`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-cpp-compile "Direct link to --native-cpp-compile")
List of compile options (C++ files only)
### `--native-compile-defaults`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-compile-defaults "Direct link to --native-compile-defaults")
\[Internal\] Use default compile options
### `--native-target`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-target "Direct link to --native-target")
Build target type
### `--embed-resources`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--embed-resources "Direct link to --embed-resources")
Embed resources into the Scala Native binary (can be read with the Java resources API)
### `--native-multithreading`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--native-multithreading "Direct link to --native-multithreading")
Enable/disable Scala Native multithreading support
## Scalac options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalac-options "Direct link to Scalac options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--args-file`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--args-file "Direct link to --args-file")
File with scalac options.
### `--scalac-option`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalac-option "Direct link to --scalac-option")
Aliases: `-O`, `--scala-opt`, `--scala-option`
Add a `scalac` option. Note that options starting with `-g`, `-language`, `-opt`, `-P`, `-target`, `-V`, `-W`, `-X`, and `-Y` are assumed to be Scala compiler options and don't require to be passed after `-O` or `--scalac-option`.
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--scalac-help`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalac-help "Direct link to --scalac-help")
Aliases: `--help-scalac`
Show help for scalac. This is an alias for --scalac-option -help
### `--scalac-verbose`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalac-verbose "Direct link to --scalac-verbose")
Aliases: `--verbose-scalac`
Turn verbosity on for scalac. This is an alias for --scalac-option -verbose
## Scalafix options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scalafix-options "Direct link to Scalafix options")
Available in commands:
[`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix)
### `--scalafix-conf`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafix-conf "Direct link to --scalafix-conf")
Custom path to the scalafix configuration file.
### `--scalafix-arg`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafix-arg "Direct link to --scalafix-arg")
Pass extra argument(s) to scalafix.
### `--scalafix-rules`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scalafix-rules "Direct link to --scalafix-rules")
Run scalafix rule(s) explicitly, overriding the configuration file default.
## Scope options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#scope-options "Direct link to Scope options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--test`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--test "Direct link to --test")
Aliases: `--test-scope`, `--with-test`, `--with-test-scope`
Include test scope
## Secret options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#secret-options "Direct link to Secret options")
Available in commands:
[`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create), [`github secret list` , `gh secret list`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-list)
### `--token`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--token-1 "Direct link to --token-1")
### `--repository`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--repository-1 "Direct link to --repository-1")
Aliases: `--repo`
## Secret create options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#secret-create-options "Direct link to Secret create options")
Available in commands:
[`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create)
### `--public-key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--public-key-1 "Direct link to --public-key-1")
Aliases: `--pub-key`
### `--dummy`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dummy-2 "Direct link to --dummy-2")
Aliases: `-n`
### `--print-request`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--print-request "Direct link to --print-request")
\[Internal\]
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--scala-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-version "Direct link to --scala-version")
Aliases: `-S`, `--scala`
Set the Scala version (3.8.2 by default)
### `--scala-binary-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-binary-version "Direct link to --scala-binary-version")
Aliases: `-B`, `--scala-bin`, `--scala-binary`
\[Internal\] Set the Scala binary version
Aliases: `--class`, `--class-path`, `--classes`, `-classpath`, `--classpath`, `-cp`, `--extra-class`, `--extra-class-path`, `--extra-classes`, `--extra-jar`, `--jar`, `--jars`
Add extra JARs and compiled classes to the class path
Aliases: `--compile-only-jar`, `--compile-only-jars`, `--extra-compile-only-jar`
Add extra JARs in the compilaion class path. Mainly using to run code in managed environments like Spark not to include certain depenencies on runtime ClassPath.
Aliases: `--extra-source-jar`, `--source-jar`, `--source-jars`
Add extra source JARs
### `--resource-dirs`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--resource-dirs "Direct link to --resource-dirs")
Aliases: `--resource-dir`
Add a resource directory
### `--as-jar`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--as-jar "Direct link to --as-jar")
\[Internal\] Put project in class paths as a JAR rather than as a byte code directory
### `--platform`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--platform "Direct link to --platform")
Specify platform
### `--scala-library`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-library "Direct link to --scala-library")
\[Internal\]
### `--with-compiler`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--with-compiler "Direct link to --with-compiler")
Aliases: `-with-compiler`, `--with-scala-compiler`
Allows to include the Scala compiler artifacts on the classpath.
### `--java`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--java "Direct link to --java")
\[Internal\] Do not add dependency to Scala Standard library. This is useful, when Scala CLI works with pure Java projects.
### `--runner`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--runner "Direct link to --runner")
\[Internal\] Should include Scala CLI runner on the runtime ClassPath. Runner is added by default for application running on JVM using standard Scala versions. Runner is used to make stack traces more readable in case of application failure.
### `--strict-bloop-json-check`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--strict-bloop-json-check "Direct link to --strict-bloop-json-check")
\[Internal\]
### `--compilation-output`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--compilation-output "Direct link to --compilation-output")
Aliases: `--compile-out`, `--compile-output`, `-d`, `--destination`, `--output-directory`
Copy compilation results to output directory using either relative or absolute path
### `--with-toolkit`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--with-toolkit "Direct link to --with-toolkit")
Aliases: `--toolkit`
Add toolkit to classPath (not supported in Scala 2.12), 'default' version for Scala toolkit: 0.8.0, 'default' version for typelevel toolkit: 0.1.29
### `--exclude`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--exclude "Direct link to --exclude")
Exclude sources
### `--object-wrapper`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--object-wrapper "Direct link to --object-wrapper")
Force object wrapper for scripts
## Snippet options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#snippet-options "Direct link to Snippet options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--script-snippet`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--script-snippet "Direct link to --script-snippet")
Allows to execute a passed string as a Scala script
### `--execute-script`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--execute-script "Direct link to --execute-script")
Aliases: `-e`, `--execute-sc`, `--execute-scala-script`
\[Internal\] A synonym to --script-snippet, which defaults the sub-command to `run` when no sub-command is passed explicitly
### `--scala-snippet`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-snippet "Direct link to --scala-snippet")
Allows to execute a passed string as Scala code
### `--execute-scala`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--execute-scala "Direct link to --execute-scala")
\[Internal\] A synonym to --scala-snippet, which defaults the sub-command to `run` when no sub-command is passed explicitly
### `--java-snippet`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--java-snippet "Direct link to --java-snippet")
Allows to execute a passed string as Java code
### `--execute-java`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--execute-java "Direct link to --execute-java")
A synonym to --scala-snippet, which defaults the sub-command to `run` when no sub-command is passed explicitly
### `--markdown-snippet`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--markdown-snippet "Direct link to --markdown-snippet")
Aliases: `--md-snippet`
Allows to execute a passed string as Markdown code
### `--execute-markdown`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--execute-markdown "Direct link to --execute-markdown")
Aliases: `--execute-md`
\[Internal\] A synonym to --markdown-snippet, which defaults the sub-command to `run` when no sub-command is passed explicitly
## Source generator options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#source-generator-options "Direct link to Source generator options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--use-build-info`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--use-build-info "Direct link to --use-build-info")
Aliases: `--build-info`
Generate BuildInfo for project
## Suppress warning options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#suppress-warning-options "Direct link to Suppress warning options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--suppress-directives-in-multiple-files-warning`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--suppress-directives-in-multiple-files-warning "Direct link to --suppress-directives-in-multiple-files-warning")
Aliases: `--suppress-warning-directives-in-multiple-files`
Suppress warnings about using directives in multiple files
### `--suppress-outdated-dependency-warning`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--suppress-outdated-dependency-warning "Direct link to --suppress-outdated-dependency-warning")
Suppress warnings about outdated dependencies in project
## Test options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#test-options "Direct link to Test options")
Available in commands:
[`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--test-frameworks`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--test-frameworks "Direct link to --test-frameworks")
Aliases: `--test-framework`
Names of the test frameworks' runner classes to use while running tests. Skips framework lookup and only runs passed frameworks.
### `--require-tests`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--require-tests "Direct link to --require-tests")
Fail if no test suites were run
### `--test-only`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--test-only "Direct link to --test-only")
Specify a glob pattern to filter the tests suite to be run.
## Uninstall options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#uninstall-options "Direct link to Uninstall options")
Available in commands:
[`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall)
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-3 "Direct link to --force-3")
Aliases: `-f`
Force scala-cli uninstall
### `--skip-cache`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--skip-cache "Direct link to --skip-cache")
\[Internal\] Don't clear Scala CLI cache
### `--binary-name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--binary-name "Direct link to --binary-name")
\[Internal\] Binary name
### `--bin-dir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bin-dir "Direct link to --bin-dir")
\[Internal\] Binary directory
## Uninstall completions options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#uninstall-completions-options "Direct link to Uninstall completions options")
Available in commands:
[`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall), [`uninstall completions` , `uninstall-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall-completions)
### `--rc-file`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--rc-file-1 "Direct link to --rc-file-1")
Path to `*rc` file, defaults to `.bashrc` or `.zshrc` depending on shell
\[Internal\] Custom banner in comment placed in rc file
### `--name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--name-2 "Direct link to --name-2")
\[Internal\] Custom completions name
## Update options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#update-options "Direct link to Update options")
Available in commands:
[`update`](https://scala-cli.virtuslab.org/docs/reference/commands#update)
### `--binary-name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--binary-name-1 "Direct link to --binary-name-1")
\[Internal\] Binary name
### `--bin-dir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bin-dir-1 "Direct link to --bin-dir-1")
\[Internal\] Binary directory
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-4 "Direct link to --force-4")
Aliases: `-f`
Force update Scala CLI if it is outdated
### `--is-internal-run`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--is-internal-run "Direct link to --is-internal-run")
\[Internal\]
### `--gh-token`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--gh-token "Direct link to --gh-token")
\[Internal\] A github token used to access GitHub. Not needed in most cases.
## Verbosity options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#verbosity-options "Direct link to Verbosity options")
Available in commands:
[`add-path`](https://scala-cli.virtuslab.org/docs/reference/commands#add-path), [`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop), [`bloop exit`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-exit), [`bloop output`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-output), [`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start), [`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`clean`](https://scala-cli.virtuslab.org/docs/reference/commands#clean), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`default-file`](https://scala-cli.virtuslab.org/docs/reference/commands#default-file), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`directories`](https://scala-cli.virtuslab.org/docs/reference/commands#directories), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`help`](https://scala-cli.virtuslab.org/docs/reference/commands#help), [`install completions` , `install-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#install-completions), [`install-home`](https://scala-cli.virtuslab.org/docs/reference/commands#install-home), [`new`](https://scala-cli.virtuslab.org/docs/reference/commands#new), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`pgp pull`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-pull), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`github secret create` , `gh secret create`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-create), [`github secret list` , `gh secret list`](https://scala-cli.virtuslab.org/docs/reference/commands#github-secret-list), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`uninstall`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall), [`uninstall completions` , `uninstall-completions`](https://scala-cli.virtuslab.org/docs/reference/commands#uninstall-completions), [`update`](https://scala-cli.virtuslab.org/docs/reference/commands#update), [`version`](https://scala-cli.virtuslab.org/docs/reference/commands#version)
### `--verbose`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--verbose "Direct link to --verbose")
Aliases: `-v`, `-verbose`
Increase verbosity (can be specified multiple times)
### `--interactive`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--interactive "Direct link to --interactive")
Aliases: `-i`
Interactive mode
### `--actions`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--actions "Direct link to --actions")
Enable actionable diagnostics
## Version options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#version-options "Direct link to Version options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test), [`version`](https://scala-cli.virtuslab.org/docs/reference/commands#version)
### `--compute-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--compute-version "Direct link to --compute-version")
Method used to compute the project version
### `--project-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--project-version "Direct link to --project-version")
Set the project version
### `--cli-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--cli-version "Direct link to --cli-version")
Aliases: `--cli`
Show plain Scala CLI version only
### `--scala-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-version-1 "Direct link to --scala-version-1")
Aliases: `--scala`
Show plain Scala version only
### `--gh-token`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--gh-token-1 "Direct link to --gh-token-1")
\[Internal\] A github token used to access GitHub. Not needed in most cases.
### `--offline`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--offline-1 "Direct link to --offline-1")
Don't check for the newest available Scala CLI version upstream
## Watch options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#watch-options "Direct link to Watch options")
Available in commands:
[`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--watch`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--watch "Direct link to --watch")
Aliases: `-w`
Run the application in the background, automatically wake the thread and re-run if sources have been changed
### `--restart`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--restart "Direct link to --restart")
Aliases: `--revolver`
Run the application in the background, automatically kill the process and restart if sources have been changed
### `--watching`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--watching "Direct link to --watching")
Aliases: `--watching-path`
Watch additional paths for changes (used together with --watch or --restart)
## Internal options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#internal-options "Direct link to Internal options")
### Add path options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#add-path-options "Direct link to Add path options")
Available in commands:
[`add-path`](https://scala-cli.virtuslab.org/docs/reference/commands#add-path)
### `--title`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--title "Direct link to --title")
\[Internal\]
### Bloop options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#bloop-options "Direct link to Bloop options")
Available in commands:
[`bloop`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop)
### `--working-directory`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--working-directory "Direct link to --working-directory")
Aliases: `--dir`, `--working-dir`
\[Internal\]
### Bloop start options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#bloop-start-options "Direct link to Bloop start options")
Available in commands:
[`bloop start`](https://scala-cli.virtuslab.org/docs/reference/commands#bloop-start)
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-5 "Direct link to --force-5")
Aliases: `-f`
\[Internal\]
### Bsp options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#bsp-options "Direct link to Bsp options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp)
### `--json-options`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--json-options "Direct link to --json-options")
\[Internal\] Command-line options JSON file
### `--json-launcher-options`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--json-launcher-options "Direct link to --json-launcher-options")
\[Internal\] Command-line launcher options JSON file
### `--envs`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--envs "Direct link to --envs")
Aliases: `--envs-file`
\[Internal\] Command-line options environment variables file
### Bsp file options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#bsp-file-options "Direct link to Bsp file options")
Available in commands:
[`clean`](https://scala-cli.virtuslab.org/docs/reference/commands#clean), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide)
### `--bsp-directory`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bsp-directory "Direct link to --bsp-directory")
Aliases: `--bsp-dir`
\[Internal\] Custom BSP configuration location
### `--bsp-name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bsp-name "Direct link to --bsp-name")
Aliases: `--name`
\[Internal\] Name of BSP
### Default file options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#default-file-options "Direct link to Default file options")
Available in commands:
[`default-file`](https://scala-cli.virtuslab.org/docs/reference/commands#default-file)
### `--write`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--write "Direct link to --write")
\[Internal\] Write result to files rather than to stdout
### `--list`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--list "Direct link to --list")
\[Internal\] List available default files
### `--list-ids`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--list-ids "Direct link to --list-ids")
\[Internal\] List available default file ids
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-6 "Direct link to --force-6")
Aliases: `-f`
\[Internal\] Force overwriting destination files
### Input options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#input-options "Direct link to Input options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--default-forbidden-directories`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--default-forbidden-directories "Direct link to --default-forbidden-directories")
\[Internal\]
### `--forbid`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--forbid "Direct link to --forbid")
\[Internal\]
### Install home options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#install-home-options "Direct link to Install home options")
Available in commands:
[`install-home`](https://scala-cli.virtuslab.org/docs/reference/commands#install-home)
### `--scala-cli-binary-path`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--scala-cli-binary-path "Direct link to --scala-cli-binary-path")
\[Internal\]
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-7 "Direct link to --force-7")
Aliases: `-f`
\[Internal\] Overwrite if it exists
### `--binary-name`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--binary-name-2 "Direct link to --binary-name-2")
\[Internal\] Binary name
### `--env`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--env-1 "Direct link to --env-1")
\[Internal\] Print the update to `env` variable
### `--bin-dir`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--bin-dir-2 "Direct link to --bin-dir-2")
\[Internal\] Binary directory
### Pgp create options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-create-options "Direct link to Pgp create options")
Available in commands:
[`pgp create`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-create)
### `--email`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--email-1 "Direct link to --email-1")
\[Internal\]
### `--password`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--password-1 "Direct link to --password-1")
\[Internal\]
### `--dest`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--dest "Direct link to --dest")
\[Internal\]
### `--pub-dest`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--pub-dest "Direct link to --pub-dest")
\[Internal\]
### `--secret-dest`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--secret-dest "Direct link to --secret-dest")
\[Internal\]
### `--verbose`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--verbose-1 "Direct link to --verbose-1")
\[Internal\]
### `--quiet`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--quiet-1 "Direct link to --quiet-1")
\[Internal\]
### Pgp key id options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-key-id-options "Direct link to Pgp key id options")
Available in commands:
[`pgp key-id`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-key-id)
### `--fingerprint`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--fingerprint "Direct link to --fingerprint")
\[Internal\]
### `--verbose`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--verbose-2 "Direct link to --verbose-2")
Aliases: `-v`
\[Internal\]
### Pgp pull options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-pull-options "Direct link to Pgp pull options")
Available in commands:
[`pgp pull`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-pull)
### `--allow-empty`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--allow-empty "Direct link to --allow-empty")
\[Internal\] Whether to exit with code 0 if no key is passed
### Pgp push options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-push-options "Direct link to Pgp push options")
Available in commands:
[`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push)
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-8 "Direct link to --force-8")
Aliases: `-f`
\[Internal\] Try to push the key even if Scala CLI thinks it's not a public key
### `--allow-empty`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--allow-empty-1 "Direct link to --allow-empty-1")
\[Internal\] Whether to exit with code 0 if no key is passed
### Pgp scala signing options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-scala-signing-options "Direct link to Pgp scala signing options")
Available in commands:
[`config`](https://scala-cli.virtuslab.org/docs/reference/commands#config), [`pgp push`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-push), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup)
### `--signing-cli-version`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--signing-cli-version "Direct link to --signing-cli-version")
\[Internal\] scala-cli-signing version when running externally (0.2.13 by default)
### `--signing-cli-java-arg`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--signing-cli-java-arg "Direct link to --signing-cli-java-arg")
\[Internal\] Pass arguments to the Java command when running scala-cli-singing externally on JVM
### `--force-signing-externally`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-signing-externally "Direct link to --force-signing-externally")
\[Internal\] When running Scala CLI on the JVM, force running scala-cli-singing externally
### `--force-jvm-signing-cli`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-jvm-signing-cli "Direct link to --force-jvm-signing-cli")
\[Internal\] When running Scala CLI on the JVM, force running scala-cli-singing using a native launcher or a JVM launcher
### Pgp sign options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-sign-options "Direct link to Pgp sign options")
Available in commands:
[`pgp sign`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-sign)
### `--password`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--password-2 "Direct link to --password-2")
\[Internal\]
### `--secret-key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--secret-key-1 "Direct link to --secret-key-1")
\[Internal\]
### `--force`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--force-9 "Direct link to --force-9")
Aliases: `-f`
\[Internal\]
### `--stdout`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--stdout "Direct link to --stdout")
\[Internal\]
### Pgp verify options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#pgp-verify-options "Direct link to Pgp verify options")
Available in commands:
[`pgp verify`](https://scala-cli.virtuslab.org/docs/reference/commands#pgp-verify)
### `--key`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--key "Direct link to --key")
\[Internal\]
### Publish connection options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#publish-connection-options "Direct link to Publish connection options")
Available in commands:
[`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish)
### `--connection-timeout-seconds`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--connection-timeout-seconds "Direct link to --connection-timeout-seconds")
\[Internal\] Connection timeout, in seconds.
### `--connection-timeout-retries`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--connection-timeout-retries "Direct link to --connection-timeout-retries")
\[Internal\] How many times to retry establishing the connection on timeout.
### `--response-timeout-seconds`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--response-timeout-seconds "Direct link to --response-timeout-seconds")
\[Internal\] Waiting for response timeout, in seconds.
### `--staging-repo-retries`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--staging-repo-retries "Direct link to --staging-repo-retries")
\[Internal\] How many times to retry the staging repository operations on failure.
### `--staging-repo-wait-time-milis`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--staging-repo-wait-time-milis "Direct link to --staging-repo-wait-time-milis")
\[Internal\] Time to wait between staging repository operation retries, in milliseconds.
### Semantic db options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#semantic-db-options "Direct link to Semantic db options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--semantic-db`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--semantic-db "Direct link to --semantic-db")
Aliases: `--semanticdb`
\[Internal\] Generate SemanticDBs
### `--semantic-db-target-root`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--semantic-db-target-root "Direct link to --semantic-db-target-root")
Aliases: `--semanticdb-target-root`, `--semanticdb-targetroot`
\[Internal\] SemanticDB target root (default to the compiled classes destination directory)
### `--semantic-db-source-root`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--semantic-db-source-root "Direct link to --semantic-db-source-root")
Aliases: `--semanticdb-source-root`, `--semanticdb-sourceroot`
\[Internal\] SemanticDB source root (default to the project root directory)
### Setup IDE options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#setup-ide-options "Direct link to Setup IDE options")
Available in commands:
[`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide)
### `--charset`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--charset "Direct link to --charset")
\[Internal\]
### Workspace options[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#workspace-options "Direct link to Workspace options")
Available in commands:
[`bsp`](https://scala-cli.virtuslab.org/docs/reference/commands#bsp), [`clean`](https://scala-cli.virtuslab.org/docs/reference/commands#clean), [`compile`](https://scala-cli.virtuslab.org/docs/reference/commands#compile), [`dependency-update`](https://scala-cli.virtuslab.org/docs/reference/commands#dependency-update), [`doc`](https://scala-cli.virtuslab.org/docs/reference/commands#doc), [`export`](https://scala-cli.virtuslab.org/docs/reference/commands#export), [`fix`](https://scala-cli.virtuslab.org/docs/reference/commands#fix), [`fmt` , `format` , `scalafmt`](https://scala-cli.virtuslab.org/docs/reference/commands#fmt), [`package`](https://scala-cli.virtuslab.org/docs/reference/commands#package), [`publish`](https://scala-cli.virtuslab.org/docs/reference/commands#publish), [`publish local`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-local), [`publish setup`](https://scala-cli.virtuslab.org/docs/reference/commands#publish-setup), [`repl` , `console`](https://scala-cli.virtuslab.org/docs/reference/commands#repl), [`run`](https://scala-cli.virtuslab.org/docs/reference/commands#run), [`setup-ide`](https://scala-cli.virtuslab.org/docs/reference/commands#setup-ide), [`shebang`](https://scala-cli.virtuslab.org/docs/reference/commands#shebang), [`test`](https://scala-cli.virtuslab.org/docs/reference/commands#test)
### `--workspace`[](https://scala-cli.virtuslab.org/docs/reference/cli-options/#--workspace "Direct link to --workspace")
\[Internal\] Directory where .scala-build is written |
| Shard | 53 (laksa) |
| Root Hash | 1541993252484946853 |
| Unparsed URL | org,virtuslab!scala-cli,/docs/reference/cli-options/ s443 |