【发布时间】:2021-06-28 11:23:18
【问题描述】:
我有一个 maven 项目(文件夹 ev),我想从 cmd 运行一个 java 类(ChargerLocation.java)。我试过link 但没有用。当我从 Eclipse 运行 ChargerLocation.java 时,它可以工作,但我想从 cmd 运行它。
看起来我应该能够运行:运行配置->显示命令行并将其粘贴到我的cmd中,但是我收到以下错误'-classpath' is not recognized as an internal or external command, operable program or batch file.
-
为了做到这一点:运行配置->显示命令行->粘贴到cmd中,我应该位于哪个文件夹中?
-
我想知道 cmd 上的命令是否应该类似于
Maven/apache-maven-3.6.3/bin/mvn exec:java -Dexec.mainClass="",因为它是一个整体的 maven 项目?还是没关系? -
通过简单地执行
javac ChargerLocation.java,我得到了 45 个错误,似乎找不到合适的库来构建。ChargerLocation.java:14:错误:包 org.matsim.api.core.v01 不存在 导入 org.matsim.api.core.v01.Coord; ^ ChargerLocation.java:15:错误:包 org.matsim.api.core.v01 不存在 导入 org.matsim.api.core.v01.Id; ^ ChargerLocation.java:16:错误:包 org.matsim.api.core.v01 不存在 导入 org.matsim.api.core.v01.Scenario; ^ ChargerLocation.java:17:错误:包 org.matsim.api.core.v01.network 不存在 导入 org.matsim.api.core.v01.network.Link; ^ ChargerLocation.java:18:错误:包 org.matsim.api.core.v01.network 不存在 导入 org.matsim.api.core.v01.network.Network; ^ ChargerLocation.java:19:错误:包 org.matsim.contrib.ev.charging 不存在 导入 org.matsim.contrib.ev.charging.ChargeUpToMaxSocStrategy; ^ ChargerLocation.java:20:错误:包 org.matsim.contrib.ev.charging 不存在 导入 org.matsim.contrib.ev.charging.ChargingLogic; ^ ChargerLocation.java:21:错误:包 org.matsim.contrib.ev.charge 不存在 导入 org.matsim.contrib.ev.charging.ChargingWithQueueingLogic; ^ ChargerLocation.java:22:错误:包 org.matsim.contrib.ev.infrastructure 不存在 导入 org.matsim.contrib.ev.infrastructure.Charger; ^ ChargerLocation.java:23:错误:包 org.matsim.contrib.ev.infrastructure 不存在 导入 org.matsim.contrib.ev.infrastructure.ChargerImpl; ^ ChargerLocation.java:24:错误:包 org.matsim.contrib.ev.infrastructure 不存在 导入 org.matsim.contrib.ev.infrastructure.ChargerSpecification; ^ ChargerLocation.java:25:错误:包 org.matsim.contrib.ev.infrastructure 不存在 导入 org.matsim.contrib.ev.infrastructure.ChargerWriter; ^ ChargerLocation.java:26:错误:包 org.matsim.contrib.ev.infrastructure 不存在 导入 org.matsim.contrib.ev.infrastructure.ImmutableChargerSpecification; ^ ChargerLocation.java:27:错误:包 org.matsim.core.config 不存在 导入 org.matsim.core.config.Config;
- 最后,我想从 Python 调用这个 java 文件,所以我在这里要做的是:使用预先编写的命令从 Python (
os.system()) 打开 cmd 以调用 java 类 (ChargerLocation.java),最后运行 java 类。
提前致谢
【问题讨论】:
-
提到的链接指向right answer is this one的问题。
-
@howlger 问题是,当在 cmd 上复制粘贴命令时,它不会粘贴整个命令,因为 cmd 似乎不允许放置超过 8191 个字符。我从 eclipse 得到的命令几乎是 10000 个字符。有没有其他方法可以在 cmd 上运行它?
-
所以你在 Windows 上(在其他操作系统上没有这样的限制)。对于 Java 9 或更高版本,您可以使用 @argfile(对于 Java 8 及更低版本,可以使用临时 JAR 文件作为解决方法):eclipse.org/eclipse/news/4.18/jdt.php#launch-with-argfile
-
@howlger 请看下面的照片。
标签: java python eclipse maven call