【发布时间】:2016-01-18 14:13:52
【问题描述】:
我在 Mac 上使用 Clojure 创建了一个新项目:
lein new app clojure-noob
使用创建我的 uberjar
lein uberjar
果然,我可以通过以下方式运行这个 uberjar:
java -jar target/uberjar/clojure-noob-0.1.0-SNAPSHOT-standalone.jar
我得到:
Hello, World!
现在我将此文件带到 Windows 7 并给出相同的命令:
java -jar clojure-noob-0.1.0-SNAPSHOT-standalone.jar
我似乎得到了无限的等待。为什么我不能在 Windows 上运行他的 .jar 文件?
Mac上的java版本是:
java version "1.8.0_51"
Java(TM) SE Runtime Environment (build 1.8.0_51-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.51-b03, mixed mode)
Windows 7 上的 java 版本为:
java version "1.8.0_66"
Java(TM) SE Runtime Environment (build 1.8.0_66-b18)
Java HotSpot(TM) Client VM (build 25.66-b18, mixed mode)
lein 版本给出以下内容:Leiningen 2.5.3 on Java 1.8.0_51 Java HotSpot(TM) 64-Bit Server VM
【问题讨论】:
-
lein 版本提供以下内容:
Leiningen 2.5.3 on Java 1.8.0_51 Java HotSpot(TM) 64-Bit Server VM -
当你以
java -verbose:class -jar ...运行它时,也许你会得到一个提示,你应该看到它会挂在哪个类。你在你的代码中做一些标准输入/标准输出的重定向吗? -
lein new从模板创建一个标准的“hello world”应用程序。它对标准输入或标准输出没有任何作用。 -
感谢 SubOptimal 的建议!这表明我正在加载各种类。这给了我耐心等待,最后,经过一长串的课程加载,它打印出“Hello,World!”这是预期的输出。我刚刚创建了一个“Hello World”模板项目——由“lein new app”创建的默认项目。我不明白为什么我的机器这么慢——可能是因为我正在运行一个 VirtualBox 虚拟机——但我只是在 Clojure 中编写了一个 hello world 项目。
标签: java jar clojure leiningen