java中处理外部库的正确方法(使用eclipse)

2024-02-22

在某种程度上,这是我之前未回答的问题的后续(link https://stackoverflow.com/questions/3238644/adding-user-defined-libraries-to-svn)在过去的几周里不断升级,现在已经到了我可以真正发展的地步......

所以这就是交易;与纯粹的计算机科学相比,我拥有更多的数学/工程背景,因此我在适当/大规模软件开发方面没有很多经验,但在脚本和算法方面却有很多经验。现在我自己在做一个大项目,我对开发的一些方面感到困惑。其中之一是处理库/依赖项

我最初创建了一个名为的文件夹lib在我的项目文件夹(在 Eclipse 工作区中)下并将我的外部库复制到其中,然后将它们添加到构建路径中。然而后来我需要一些其他的东西,比如JCommons, JFreeChart, Apache Commons Math根据说明,这些库可以/应该作为用户库包含在内,从而允许开发人员从 IDE(例如 Eclipse)中查看文档和源代码。到目前为止我已经做到了,我希望...

那么问题出在哪里呢?首先,上面提到的用户库不包含在该项目的 SVN 副本中,这意味着我的同事想要测试我的项目无法通过简单地从 SVN 获取该项目来实现。现在,当我在工作中更换工作站时,问题的第二阶段就没有出现了,我想将我的项目从备份导入到 Eclipse 中,但是除了那些用户库之外的所有内容都在那里。让事情变得更复杂的是,当这个软件完成后,它将在服务器上实现,因此如果所有内容都可以打包到一个库中,或者更好的可运行库中,那绝对是最好的jar file.

之前有人建议我看看 Maven 或 Ivy,但在检查了它们之后我的初步理解是它们从一开始就被使用,并且主要用于更复杂的项目。老实说,我完全困惑于我应该如何管理我的依赖项。有任何想法吗?

(很抱歉写得太长,但我认为完整和长的信息比信息不足更好)

EDIT:我已经设法解决了这个问题;这个问题显然源于一个简单的事实,即 Eclipse 不会将所有资源复制到一个地方,并且某些库的安装说明并没有真正警告您如何以最佳方式管理库。

感谢大家花时间尝试帮助我。我会及时更多地研究像 Maven 和 Ivy 这样的项目,这绝对是有趣的东西。然而现在我只需要让软件回到运行状态,已经与新东西搏斗太久了..:)


冒着犯异端行为的风险,我想说 Maven 和 wot-not 在这里太过分了。您需要 SVN 项目中的依赖项,就这么简单。您已将 lib 文件夹添加到 Eclipse 中的构建路径中,这很好。但是,除非您专门将 lib 文件夹的内容添加到您的项目中(如 Fred 所描述的),否则这些项目将不符合提交到 SVN 的条件——它们只会在您的设置的类路径中被引用。这对你有好处,但对任何想要检查你的项目的人来说没有好处(正如你所发现的)。

我很高兴我们可以就最佳实践、将第三方库提交到版本控制的有效性等等进行无休止的讨论......但我认为大多数人都有工作要做;-)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java中处理外部库的正确方法(使用eclipse) 的相关文章

  • “_加载小部件时出现问题”消息

    加载小部件时 如果找不到资源或其他内容 则会显示 加载小部件时出现问题 就这样 惊人的 此消息保留在主屏幕上 甚至没有说明加载时遇到问题的小部件 我通过反复试验弄清楚了这一点 但我想知道发生这种情况时是否有任何地方可以找到错误消息 Andr
  • Grails 2.3.0 自动重新加载不起作用

    我最近将我们的项目升级到 grails 2 3 0 一切工作正常 除了每当我更改代码时自动重新加载都无法工作的问题 这包括所有项目工件 控制器 域 服务 gsps css 和 javascript 文件 我的旧版本 grails 可以正常工
  • 如何从秘密字符串中制作 HMAC_SHA256 密钥以在 jose4j 中与 JWT 一起使用?

    我想生成 JWT 并使用 HMAC SHA256 对其进行签名 对于该任务我必须使用jose4j https bitbucket org b c jose4j wiki Home 我尝试根据秘密生成密钥 SecretKeySpec key
  • Spring安全“记住我”cookie在第一个请求中不可用

    我无法在登录请求后检索 Spring 记住我 cookie 但它在对受保护页面的下一个请求中工作正常 谁能告诉我怎样才能立即得到它 我在登录请求中设置了记住我的 cookie 但在 Spring 重定向回原始 受保护的 url 后无法检索它
  • eclipse中导入项目文件夹图标

    我在 Eclipse 工作区中新导入的 Maven 项目有J and M项目文件夹顶部的图标 项目和包资源管理器 而其他导入的 Maven 项目只有一个J icon 有人可以解释其中的区别吗 该项目有J装饰器被称为 Java 项目和具有M装
  • 如何在 JSP 中导入类?

    我是一个完全的JSP初学者 我正在尝试使用java util List在 JSP 页面中 我需要做什么才能使用除以下类之外的类java lang 使用以下导入语句进行导入java util List 顺便说一句 要导入多个类 请使用以下格式
  • 如何将 android.net.Uri 转换为 java.net.URL? [复制]

    这个问题在这里已经有答案了 有没有办法从Uri to URL 我正在使用的库需要这个 它only接受一个URL但我需要在我的设备上使用图像 如果该方案的Uri is http or https new URL uri toString 应该
  • 在java中实现你自己的阻塞队列

    我知道这个问题之前已经被问过并回答过很多次了 但我只是无法根据互联网上找到的示例找出窍门 例如this http tutorials jenkov com java concurrency blocking queues html or t
  • Java:正则表达式排除空值

    在问题中here https stackoverflow com questions 51359056 java regexp for a separated group of digits 我得到了正则表达式来匹配 1 到 99 之间的一
  • 隐式超级构造函数 Person() 未定义。必须显式调用另一个构造函数?

    我正在开发一个项目 但收到错误 隐式超级构造函数 Person 未定义 必须显式调用另一个构造函数 我不太明白它 这是我的人物课程 public class Person public Person String name double D
  • 无法加载或查找主类,可以在命令行中使用,但不能在 IDE 中使用[重复]

    这个问题在这里已经有答案了 在将其标记为重复之前 请先听我说完 我正在尝试使用 gradle 导入一个 java 项目 功能齐全 适用于所有其他笔记本电脑 没有问题 我的项目 100 正常运行 适用于所有其他笔记本电脑 当我的笔记本电脑被重
  • Cloudfoundry:如何组合两个运行时

    cloundfoundry 有没有办法结合两个运行时环境 我正在将 NodeJS 应用程序部署到 IBM Bluemix 现在 我还希望能够执行独立的 jar 文件 但应用程序失败 APP 0 bin sh 1 java not found
  • 如何记录来自 Akka (Java) 的所有传入消息

    在 Scala 中 您可以使用 LoggingReceive 包装接收函数 如何通过 Java API 实现相同的目标 def receive LoggingReceive case x do something Scala API 有Lo
  • 在 Spring Boot Actuator 健康检查 API 中启用日志记录

    我正在使用 Spring boot Actuator APIproject https imobilenumbertracker com 拥有一个健康检查端点 并通过以下方式启用它 management endpoints web base
  • Android Studio 将音乐文件读取为文本文件,如何恢复它?

    gameAlert mp3是我的声音文件 运行应用程序时 它询问我该文件不与任何文件类型关联 请定义关联 我选择TextFile错误地 现在我的音乐文件被读取为文本文件 我如何将其转换回music file protected void o
  • 尝试使用等于“是”或“否”的字符串变量重新启动 do-while 循环

    计算行程距离的非常简单的程序 一周前刚刚开始 我有这个循环用于解决真或假问题 但我希望它适用于简单的 是 或 否 我为此分配的字符串是答案 public class Main public static void main String a
  • 如何在Java中正确删除数组[重复]

    这个问题在这里已经有答案了 我刚接触 Java 4 天 从我搜索过的教程来看 讲师们花费了大量精力来解释如何分配二维数组 例如 如下所示 Foo fooArray new Foo 2 3 但我还没有找到任何解释如何删除它们的信息 从内存的情
  • Hibernate 和可序列化实体

    有谁知道是否有一个框架能够从实体类中剥离 Hibernate 集合以使它们可序列化 我查看了 BeanLib 但它似乎只进行实体的深层复制 而不允许我为实体类中的集合类型指定实现映射 BeanLib 目前不适用于 Hibernate 3 5
  • Java &= 运算符应用 & 或 && 吗?

    Assuming boolean a false 我想知道是否这样做 a b 相当于 a a b logical AND a is false hence b is not evaluated 或者另一方面 这意味着 a a b Bitwi
  • 在哪里存储 Java 的 .properties 文件?

    The Java教程 http download oracle com javase tutorial essential environment properties htmlon using Properties 讨论如何使用 Prop

随机推荐

  • 无法让 QueryDsl / APT 生成 Q 类

    我正在尝试在新的 Spring 项目中使用 QueryDsl 我对 QueryDsl 很陌生 对 Maven 和 Spring 也很陌生 所以我可能会缺少一些相当基本的东西 但我无法让 QueryDsl maven apt plugin 来
  • boost是否支持c++11的std::tuple的序列化?

    boost是否支持c 11的std tuple的序列化 我在 boost serialization 找不到 tuple hpp 头文件 我正在使用 boost 1 52 0 如果需要的话很乐意升级 但似乎1 53版本的变化 http ww
  • Silex - Twig_Error_Syntax:函数“路径”不存在

    根据Silex 文档 http silex sensiolabs org doc providers twig html symfony2 components integration Symfony 提供了一个 Twig 桥 它在一些 S
  • React-native run-android 卡在 99% appDebug

    I have previously shut down the react native run android still it gets stuck at 99 executing I don t seem to find any so
  • Gulp src 返回空文件

    我正在尝试为 sass js 编译创建 Gulp 任务 并且我还包含了用于实时重新加载的代码 它工作得很好 只是有时 gulp src 在我编辑它们时会将空文件扔到管道中 var gulp require gulp var sass req
  • 是否可以从 CUDA 10.1 内核调用 cuBLAS 或 cuBLASLt 函数?

    关于 CUDA 10 1 我正在对几何网格进行一些计算 并在网格的每个面进行大量独立计算 我运行一个 CUDA 内核来计算每个面 计算涉及一些矩阵乘法 因此我想使用 cuBLAS 或 cuBLASLt 来加快速度 由于我需要进行许多矩阵乘法
  • 测试 Django 信号的正确方法

    我正在尝试测试发送的信号 它正在提供 args 内部触发信号contact question create提交表单后立即查看 我的测试用例是这样的 def test form should post proper data via sign
  • TinyMCE 不工作 - 即使有他们的例子?

    ISSUE 我正在尝试使用 TinyMCE 4 0 12 但无法让它工作 它只会让我的文本区域完全消失 到目前为止我所做的 我什至从他们的页面准确复制了他们的示例代码 但它甚至不起作用 我已将所有文件提取到 js tinymce 我是否缺少
  • 如何在实体框架中按最后带有空值的列进行排序

    有谁知道如何返回最后带有空值的字符串的有序列表 我有这样的事情 using var context new DomainEntities var result context Users OrderBy u gt u LastName Th
  • module.exports 将所有函数包含在一行中

    这是一个后续问题在 Node js 中 如何 包含 其他文件中的函数 https stackoverflow com questions 5797852 in node js how do i include functions from
  • 检测图像上的点击

    我正在尝试动态加载图像并显示它们 如下所示 var uploader plupload getUploader uploader bind FileUploaded function up file res append div a hre
  • 当我可以直接访问IP时,为什么还需要xip io?

    xip io 欢迎屏幕显示如下 10 0 0 1 xip io 解析为 10 0 0 1 我可以直接使用IP 为什么还要经过xip io呢 是用域名而不是IP来访问服务器吗 主要用例是当您的应用程序需要支持多个子域时 以这些生产子域为例 w
  • 在 VIM 中处理大文件

    我尝试在 VIM 中打开一个巨大的 2GB 文件 但它被卡住了 我实际上不需要编辑文件 只需高效地跳转即可 我如何在 VIM 中处理非常大的文件 我今天有一个 12GB 的文件需要编辑 vim LargeFile 插件对我不起作用 它仍然耗
  • Laravel 迁移:类“未找到”

    我正在将 Laravel 准系统项目部署到 Microsoft Azure 但是每当我尝试执行php artisan migrate我收到错误 2015 06 13 14 34 05 production ERROR 异常 Symfony
  • 如何在不使用第三方网关服务的情况下设置 Kannel

    我想设置 Kannel 来发送 SMS 消息 而无需通过 Clickatell 或 Twilio 等第三方网关 换句话说 我想连接到每个无线服务 AT T Verizon 等 的 SMPP 服务器 以这种方式运行 Kannel 服务器有多困
  • CMake 不支持工具集规范

    我正在尝试构建使用 CMake 的 Checked C 项目 但是当我生成 makefile CMake 时出现以下错误 checkedc build cmake llvm CMake Error at CMakeLists txt 57
  • 在 python 中使用 selenium 将密钥发送到文本区域不起作用

    我试图通过制作一个机器人来学习硒 该机器人可以访问 Instagram 帐户并对帖子发表评论 这是我的代码 from selenium import webdriver from selenium webdriver common keys
  • aarch64;加载获取独占与加载独占

    有什么区别LDAXR LDXRAArch64 指令集之外的指令 从参考手册来看 它们看起来完全相同 获取 一词除外 LDAXR 加载获取独占寄存器 从按基址寻址的存储器加载字到Wt 将物理地址记录为独占访问 LDXR 加载独占寄存器 从内存
  • 如何 mod_rewrite 并保留查询字符串?

    我想将 URL mod rewrite 到另一个页面 但我还希望保留添加的任何查询字符串 RewriteEngine On enforce trailing slashes RewriteCond REQUEST FILENAME f Re
  • java中处理外部库的正确方法(使用eclipse)

    在某种程度上 这是我之前未回答的问题的后续 link https stackoverflow com questions 3238644 adding user defined libraries to svn 在过去的几周里不断升级 现在