gpt4 book ai didi

java - spring boot远程shell自定义命令

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:32:20 25 4
gpt4 key购买 nike

我尝试向 spring boot 远程 shell 添加一个新的自定义命令但没有成功。在文档中只有一个常规示例可用,但我喜欢使用 Java 创建一个新命令。

http://docs.spring.io/spring-boot/docs/current/reference/html/production-ready-remote-shell.html我还检查了 CRaSH 文档:http://www.crashub.org/1.3/reference.html#_java_commands

我将我的类放在 package commands 和 crash.commands 下,但是如果我通过 ssh 连接到 shell 并键入 help,我看不到我的新命令。知道我做错了什么吗?

这是我的 Java 代码:

package commands;

import org.crsh.cli.Command;
import org.crsh.cli.Usage;
import org.crsh.command.BaseCommand;
import org.springframework.stereotype.Component;

@Component
public class hello extends BaseCommand {

@Command
@Usage("Say Hello")
public String test() {
return "HELLO";
}
}

最佳答案

如果你的类名为'hello',把它放在

resources/crash/commands/hello/hello.java

有一个包声明并不重要。您不必在 src 中放置任何内容,只需将其放入资源中即可。

@Component 不是必需的。

此类在运行时编译。见:

org.crsh.lang.impl.java.JavaCompiler#compileCommand

因此,任何依赖注入(inject)要求都需要相应地考虑惰性初始化。

关于java - spring boot远程shell自定义命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26201466/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com