gpt4 book ai didi

java - 将 Java 和 Scala 集成到一个项目中

转载 作者:行者123 更新时间:2023-12-02 11:05:02 26 4
gpt4 key购买 nike

我非常熟悉 Java 及其 Spring 框架。所以我们正在使用 Spring Boot 项目,我们已经使用 java 实现了各种服务,现在我们想在其中添加一些 scala 服务(用于 Spark 实现)。

这样我就可以轻松处理来自 Controller 的请求(由 UI 提交)。

任何人都可以建议我可以遵循的一些不同方法或最佳实践来构建项目和创建服务

如果您能用一些示例或用例进行解释,将会很有帮助。

最佳答案

我经常使用的混合 Java 和 Scala 的方法是基于 Maven 的。将 Scala 编译器插件放在 pom.xml 中的 Maven 编译器插件之上:

    <sourceDirectory>src/main/java</sourceDirectory>
<!--<testSourceDirectory>src/test/scala</testSourceDirectory>-->
<pluginManagement>
<plugins>
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<version>3.4.1</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<configuration>
<recompileMode>incremental</recompileMode>
</configuration>
<executions>
<execution>
<id>scala-compile-first</id>
<phase>process-resources</phase>
<goals>
<goal>add-source</goal>
<goal>compile</goal>
</goals>
<configuration>
<args>
<arg>-Ydelambdafy:method</arg>
<arg>-target:jvm-1.8</arg>
<arg>-deprecation</arg>
<arg>-feature</arg>
<arg>-unchecked</arg>
<arg>-language:implicitConversions</arg>
<arg>-language:postfixOps</arg>
</args>
</configuration>
</execution>
<execution>
<id>scala-test-compile</id>
<phase>process-test-resources</phase>
<goals>
<goal>testCompile</goal>
</goals>
<configuration>
<args>
<arg>-Ydelambdafy:method</arg>
<arg>-target:jvm-1.8</arg>
<arg>-deprecation</arg>
<arg>-feature</arg>
<arg>-unchecked</arg>
<arg>-language:implicitConversions</arg>
<arg>-language:postfixOps</arg>
</args>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<compilerId>javac</compilerId>
<debug>true</debug>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>

我创建了a sample project at Github .

关于java - 将 Java 和 Scala 集成到一个项目中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51042738/

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