首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从命令行向scala sbt传递参数时出错

从命令行向Scala sbt传递参数时出错可能是由于以下原因之一:

  1. 参数格式错误:请确保在命令行中正确输入参数,并使用正确的语法和格式。参数通常以---开头,后跟参数名称和值。例如,sbt run --arg1 value1 --arg2 value2
  2. 参数解析错误:如果参数值包含特殊字符或空格,请使用引号将其括起来。例如,sbt run --arg1 "value with spaces"
  3. 依赖错误:如果你的项目依赖于其他库或模块,并且你正在尝试传递相关参数,请确保这些依赖已正确配置并在构建文件中声明。
  4. sbt配置错误:检查你的sbt配置文件(通常是build.sbt)是否正确配置了参数的接收和处理。确保你使用了正确的参数名称和类型,并在构建文件中定义了相应的任务或设置。
  5. sbt版本兼容性问题:某些参数可能只适用于特定版本的sbt。请确保你正在使用与参数兼容的sbt版本,并查阅相关文档以了解参数的支持情况。

如果你能提供更具体的错误信息或示例命令行和构建文件内容,我可以给出更详细的帮助。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

SBT 常用开发技巧

SBT 一直以来都是 Scala 开发者不可言说的痛,最主要的原因就是官方文档维护质量较差,没有经过系统的、循序渐进式的整理,导致初学者入门门槛较高。虽然也有其它构建工具可以选择(例如 Mill), 但是在短时间内基本上不可能撼动 SBT 的地位,毕竟它是 Scala 名正言顺的亲儿子。当然还有另外一个原因可能导致其它构建工具永远没有机会,Scala 语言以其卓越的编译器著称,编译器支持的丰富特性需要和构建工具进行无缝对接,例如 Scala 的 Macro 需要和构建工具的增量编译密切配合,在和编译器对接方面,SBT 具有先天优势。既然别无选择,只能选择默默忍受。下面分享在SBT使用过程中的一些常用技巧。

02

makefile 的 ifdef, ifeq 使用及辨析

#可以用命令行传递变量 RELEASE = abc #ifdef 变量名称不能加$() ifdef RELEASE $(warning RELEASE defined) else $(warning RELEASE not defined) endif #ifeq 后面参数要叫$(), 因为是值引用, 值可以为数值或字符串 ifeq ($(RELEASE),abc) $(warning RELEASE eqal abc) else $(warning RELEASE not equal abc) endif all: @echo ok! ************************************************** make 编译不同版本,例如debug, release 的简单示例。 用make 变量ver, 控制CFLAGS 变量,从而编译出不同版本。 [/pts/2@hjj ~/test]$ cat test.c #include <stdio.h> #include <unistd.h> int main(int argc,char *argv[]) { char *tty=ttyname(0); printf("tty is %s\n",tty); return 0; } [/pts/2@hjj ~/test]$ cat Makefile CC = gcc TARGET = test OBJS = test.o ifeq ($(ver), debug) $(warning ver is debug) CFLAGS = -g -Ddebug else $(warning ver is not debug) CFLAGS = -c -O3 endif $(TARGET): $(OBJS) $(CC) -o $@ $^ clean: rm test test.o 注释: makefile 采用了ifeq-else-endif 结构 可以判别莫个make变量是否定义。 make变量可以在makefile中定义,也可以由make命令行传递。 由于makefile 支持环境变量,所以你预先定义了环境变量,也可以不在命令行中传递而直接使用环境变量 这种机制使得编写脚本控制不同的复杂的编译成为可能, 例如支持各种地域的不同的版本。用地域变量,控制make的编译选项/D,控制编译出不同的版本 ---------------------------------------- 编译debug 版本, 从命令行传递变量 ---------------------------------------- [/pts/2@hjj ~/test]$ make ver=debug Makefile:6: ver is debug gcc -g -Ddebug -c -o test.o test.c gcc -o test test.o ---------------------------------------- 清理,无所谓版本信息 ---------------------------------------- [/pts/2@hjj ~/test]$ make clean Makefile:9: ver is not debug rm test test.o ---------------------------------------- 编译release 版本 ---------------------------------------- [/pts/2@hjj ~/test]$ make Makefile:9: ver is not debug gcc -c -O3 -c -o test.o test.c gcc -o test test.o

04

.NET CLI 概述

本文适用于: ✔️ .NET Core 2.1 SDK 及更高版本 .NET 命令行接口 (CLI) 工具是用于开发、生成、运行和发布 .NET 应用程序的跨平台工具链。 .NET CLI 附带了 .NET SDK。 若要了解如何安装 .NET SDK,请参阅安装 .NET Core。 CLI 命令 默认安装以下命令: 基本命令 new restore build publish run test vstest pack migrate clean sln help store 项目修改命令 add package add reference remove package remove reference list reference 高级命令 nuget delete nuget locals nuget push msbuild dotnet install script 工具管理命令 tool install tool list tool update tool restore 自 .NET Core SDK 3.0 起可用。 tool run 自 .NET Core SDK 3.0 起可用。 tool uninstall 工具是控制台应用程序,它们从 NuGet 包中安装并从命令提示符处进行调用。 你可自行编写工具,也可安装由第三方编写的工具。 工具也称为全局工具、工具路径工具和本地工具。 有关详细信息,请参阅 .NET 工具概述。 命令结构 CLI 命令结构包含驱动程序(“dotnet”)和命令,还可能包含命令参数和选项。 在大部分 CLI 操作中可看到此模式,例如创建新控制台应用并从命令行运行该应用,因为从名为 my_app 的目录中执行时,显示以下命令: dotnet new console dotnet build --output ./build_output dotnet ./build_output/my_app.dll 驱动程序 驱动程序名为 dotnet,并具有两项职责,即运行依赖于框架的应用或执行命令。 若要运行依赖于框架的应用,请在驱动程序后指定应用,例如,dotnet /path/to/my_app.dll。 从应用的 DLL 驻留的文件夹执行命令时,只需执行 dotnet my_app.dll 即可。 如果要使用特定版本的 .NET 运行时,请使用 --fx-version <VERSION> 选项(请参阅 dotnet 命令参考)。 为驱动程序提供命令时,dotnet.exe 启动 CLI 命令执行过程。 例如: dotnet build 首先,驱动程序确定要使用的 SDK 版本。 如果没有 global.json 文件,则使用可用的最新版本 SDK。 这有可能是预览版或稳定版,具体取决于计算机上的最新版本。 确定 SDK 版本后,它便会执行命令。 命令 由命令执行操作。 例如,dotnet build 生成代码。 dotnet publish 发布代码。 使用 dotnet {command} 约定将命令作为控制台应用程序实现。 自变量 在命令行上传递的参数是被调用的命令的参数。 例如,执行 dotnet publish my_app.csproj 时,my_app.csproj 参数指示要发布的项目,并被传递到 publish 命令。 选项 在命令行上传递的选项是被调用的命令的选项。 例如,执行 dotnet publish --output /build_output 时,--output 选项及其值被传递到 publish 命令。 请参阅 dotnet/sdk GitHub 存储库 .NET 安装指南

01
领券