为啥我不能将 apache.thrift 导入 IntelliJ 项目?

Posted

技术标签:

【中文标题】为啥我不能将 apache.thrift 导入 IntelliJ 项目?【英文标题】:Why can't I import apache.thrift to an IntelliJ project?为什么我不能将 apache.thrift 导入 IntelliJ 项目? 【发布时间】:2021-11-28 21:45:25 【问题描述】:

大型 Java 项目的新手,所以我不太确定依赖项在代码中是如何工作的。如果我想使用 apache thrift,为什么我不能放

import org.apache.thrift.server.TServer;

import org.apache.thrift.server.TThreadPoolServer;

import org.apache.thrift.transport.TServerSocket;

import org.apache.thrift.transport.TServerTransport;

在我的文件顶部?这是否需要我下载一些东西并将其添加到我的类路径中?这是否意味着任何其他试图运行我的代码的人也需要在本地安装它?我希望在不使用 Maven 或 npm 的情况下拥有独立的 Java 文件。提前致谢。

【问题讨论】:

你使用任何依赖管理工具吗? (Maven 还是 Gradle?) 【参考方案1】:

我建议您使用依赖管理工具,例如 MavenGradle

这些工具将帮助您处理依赖项,而不仅仅是(构建、生命周期等)。

所以你需要做的是:

对于pom 文件中的Maven,从Maven Repo 获取依赖项:

<dependency>
    <groupId>org.apache.thrift</groupId>
    <artifactId>libthrift</artifactId>
    <version>0.15.0</version>
</dependency>

对于Gradle 在您的.gradle 文件中,再次来自Maven Repo:

implementation group: 'org.apache.thrift', name: 'libthrift', version: '0.15.0'

如果您不会使用上述工具,那么您必须找到并下载 .jar 文件 库,您想使用并将其添加到项目的类路径中。

转到Apache Thriftwebsite,您可以获得最新版本。

但是,为了回答您的问题,是的他们还应该下载您使用的库,除非您将它们全部打包在一起(就像 Maven 为您做的那样)。

但问题是,如果其他用户下载的版本与您使用的版本不同。那么您的应用可能无法按预期运行,甚至抛出异常。

【讨论】:

以上是关于为啥我不能将 apache.thrift 导入 IntelliJ 项目?的主要内容,如果未能解决你的问题,请参考以下文章

apache thrift 中是不是有类似的导入语句?

Apache Thrift 加密 - Java

Apache Thrift C++ typedef 问题

为啥我不能第二次将组件导入 VUE?

为啥我不能将 primereact 样式导入 webpack 4 react 样板?

将服务器,客户端文件放在 apache thrift 中的位置