当前位置: 代码迷 >> 综合 >> Spring In Action 21.3示例代码出现Could not find artifact :thymeleaf-spring4:jar: in local
  详细解决方案

Spring In Action 21.3示例代码出现Could not find artifact :thymeleaf-spring4:jar: in local

热度:46   发布时间:2023-11-18 14:04:46.0

环境:

 springboot-CLI-2.0.1.RELEASE

控制器groovy类信息:

@Grab("thymeleaf-spring4")
@Controller
@RequestMapping("/")
class ContactController {

    @Autowired
    ContactRepository contactRepo

    @RequestMapping(method=RequestMethod.GET)
    String home(Map<String,Object> model) {
        List<Contact> contacts = contactRepo.findAll()
        model.putAll([contacts: contacts])
        "home"
    }

    @RequestMapping(method=RequestMethod.POST)
    String submit(Contact contact) {
        contactRepo.save(contact)
        "redirect:/"
    }

}

具体错误信息:

D:\SpringBootCLI -GroovyProject\contacts>spring run *.groovy
Resolving dependencies...
startup failed:
General error during conversion: org.eclipse.aether.resolution.DependencyResolut
ionException: Could not find artifact :thymeleaf-spring4:jar: in local (file:/D:
/SpringBootCLI%20-GroovyProject/contacts/repository)

org.springframework.boot.cli.compiler.grape.DependencyResolutionFailedException:
 org.eclipse.aether.resolution.DependencyResolutionException: Could not find art
ifact :thymeleaf-spring4:jar: in local (file:/D:/SpringBootCLI%20-GroovyProject/
contacts/repository)
        at org.springframework.boot.cli.compiler.grape.AetherGrapeEngine.resolve
(AetherGrapeEngine.java:311)
        at org.springframework.boot.cli.compiler.grape.AetherGrapeEngine.grab(Ae
therGrapeEngine.java:119)
        at groovy.grape.Grape.grab(Grape.java:167)
        at groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransfo
rmation.java:376)
        at org.codehaus.groovy.transform.ASTTransformationVisitor$3.call(ASTTran
sformationVisitor.java:346)
        at org.codehaus.groovy.control.CompilationUnit.applyToSourceUnits(Compil
ationUnit.java:966)
        at org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(Compilat
ionUnit.java:626)
        at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(Co
mpilationUnit.java:602)
        at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.j
ava:579)
        at org.springframework.boot.cli.compiler.GroovyCompiler.compile(GroovyCo
mpiler.java:207)
        at org.springframework.boot.cli.command.run.SpringApplicationRunner.comp
ile(SpringApplicationRunner.java:129)
        at org.springframework.boot.cli.command.run.SpringApplicationRunner.comp
ileAndRun(SpringApplicationRunner.java:101)
        at org.springframework.boot.cli.command.run.RunCommand$RunOptionHandler.
run(RunCommand.java:111)
        at org.springframework.boot.cli.command.options.OptionHandler.run(Option
Handler.java:84)
        at org.springframework.boot.cli.command.OptionParsingCommand.run(OptionP
arsingCommand.java:54)
        at org.springframework.boot.cli.command.CommandRunner.run(CommandRunner.
java:219)
        at org.springframework.boot.cli.command.CommandRunner.runAndHandleErrors
(CommandRunner.java:171)
        at org.springframework.boot.cli.SpringCli.main(SpringCli.java:63)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner
.java:48)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
        at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)

Caused by: org.eclipse.aether.resolution.DependencyResolutionException: Could no
t find artifact :thymeleaf-spring4:jar: in local (file:/D:/SpringBootCLI%20-Groo
vyProject/contacts/repository)
        at org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDepen
dencies(DefaultRepositorySystem.java:384)
        at org.springframework.boot.cli.compiler.grape.AetherGrapeEngine.resolve
(AetherGrapeEngine.java:306)
        ... 25 more
Caused by: org.eclipse.aether.resolution.ArtifactResolutionException: Could not
find artifact :thymeleaf-spring4:jar: in local (file:/D:/SpringBootCLI%20-Groovy
Project/contacts/repository)
        at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(Defa
ultArtifactResolver.java:444)
        at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtif
acts(DefaultArtifactResolver.java:246)
        at org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDepen
dencies(DefaultRepositorySystem.java:367)
        ... 26 more
Caused by: org.eclipse.aether.transfer.ArtifactNotFoundException: Could not find
 artifact :thymeleaf-spring4:jar: in local (file:/D:/SpringBootCLI%20-GroovyProj
ect/contacts/repository)
        at org.eclipse.aether.connector.basic.ArtifactTransportListener.transfer
Failed(ArtifactTransportListener.java:39)
        at org.eclipse.aether.connector.basic.BasicRepositoryConnector$TaskRunne
r.run(BasicRepositoryConnector.java:355)
        at org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run(Runn
ableErrorForwarder.java:67)
        at org.eclipse.aether.connector.basic.BasicRepositoryConnector$DirectExe
cutor.execute(BasicRepositoryConnector.java:581)
        at org.eclipse.aether.connector.basic.BasicRepositoryConnector.get(Basic
RepositoryConnector.java:249)
        at org.eclipse.aether.internal.impl.DefaultArtifactResolver.performDownl
oads(DefaultArtifactResolver.java:520)
        at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(Defa
ultArtifactResolver.java:421)
        ... 28 more

1 error

 

解决办法

添加thymeleaf模板引擎时使用@Grab("spring-boot-starter-thymeleaf")而不是使用@Grab("thymeleaf-spring4")

(不得不说墙外的世界还是精彩,墙内某度上啥也找不到)

  相关解决方案