当前位置: 首页 > 知识库问答 >
问题:

Gradle应用程序插件与主类在非主源集中

雷国兴
2023-03-14

文件说

您可以通过执行run任务(类型:JavaExec)来运行应用程序。这将编译主源代码集,并启动一个新的JVM,其类(以及所有运行时依赖项)作为类路径,并使用指定的主类。您可以使用gradle run--debug jvm在调试模式下启动应用程序(请参阅JavaExec.setDebug(布尔))。

在我的例子中,主类不在主源集中,而是在jmh中(我想快速尝试一些东西,而不必使用在那里定义的类来检查jmh基础设施)。我还可以使用应用程序插件吗?

只需使用/gradlew:benchmarks:run给出了“无法找到或加载主类MyMainClass”,如预期的那样<代码>:jmhRun(与其他任务类似)给出“在项目“基准”中找不到任务“jmhRun”<代码>:runJmh是相同的。

共有1个答案

弘承运
2023-03-14

这仍然是不可能的(Gradle 5.0),因为main源代码集的名称在org.gradle.api.plugins.Application ationPlugin#addRunWG中不可配置。我在那里制造了一个问题https://github.com/gradle/gradle/issues/8113.

UPD:正如gradle杂志中所建议的那样

tasks.named('run', JavaExec) {
    classpath = <wanted classpath>
}
 类似资料:
  • 我想做一个http://spring.io/guides/gs/rest-service/的教程,我做的一切都像教程一样。 当我试图用教程中的gradle.build构建gradle时,gradle构建失败了,因为丢失了。 我确实添加了它,现在编译正确开始和结束,但一旦我试图做 java-jar构建/libs/gs-rest-service-0.1.0.jar 我不知道该拿它怎么办。有帮助吗?

  • 这是我使用SpringBoot的第一天,我试图理解体系结构,因此我开始构建一个hello world应用程序: 在我的pom.xml中,在maven-shade-plugin下,我将mainClass声明如下: 文件目标是src/main/java/com/demo/helloworld.java,该文件中的代码是: 我错过了什么?

  • 我已经为我正在开发的一个Spring-Boot应用程序创建了一个build计划。当我部署并尝试启动应用程序时,我得到以下错误。 myapp.jar中没有主清单属性 清单-版本:1.0 实施-标题:Spring Boot Data REST Starter 实施-版本:1.4.0发行版 存档-版本:Plexus Archiver 构建者:Babilo 规范-供应商:Pivotal Software,

  • 插件目录在程序根目录public/plugins 插件命名规范 插件类名采用大驼峰命名法,都带 Plugin类名后缀,如 DemoPlugin,CustomAdminLoginPlugin 插件目录名应该把插件类名转化为小写下划线形式的,如 demo,custom_admin_login 插件类主文件位于插件根目录 命名格式:插件名+Plugin.php 在插件根目录创建DemoPlugin.ph

  • 插件类主文件 文件位于插件根目录 命名格式:插件名+Plugin.class.php <?php // +---------------------------------------------------------------------- // | ThinkCMF [ WE CAN DO IT MORE SIMPLE ] // +-----------------------------

  • 插件目录在程序根目录public/plugins 插件命名规范 插件类名采用大驼峰命名法,都带 Plugin类名后缀,如 DemoPlugin,CustomAdminLoginPlugin 插件目录名应该把插件类名转化为小写下划线形式的,如 demo,custom_admin_login 插件类主文件位于插件根目录 命名格式:插件名+Plugin.php 在插件根目录创建DemoPlugin.ph