草庐IT

Java 类路径和相对路径

全部标签

ruby - RSpec 中的相对文件路径

我对/lib/classes中的一个类进行了RSpec测试,它需要访问一个zip文件(无上传)。该文件存储在/spec/fixtures/files/test.zip中。如何输入正确的路径以使其与环境无关,即没有绝对路径? 最佳答案 Rails.root将为您提供应用根目录,因此Rails.root.join"spec/fixtures/files/test.zip"将为您提供文件的绝对路径,与应用在硬盘上的位置无关。 关于ruby-RSpec中的相对文件路径,我们在StackOverf

ruby - 如何让 Ruby Dir#glob 返回基本名称,而不是绝对路径?

FakeProfilePictures::Photo.all_large_names_2x(定义如下)返回绝对路径名数组,但是当我执行Dir["picture_*@2x.*"]从irb中的正确目录,我只得到基本名称(我想要的)。获取基本名称的最佳方法是什么?我知道我可以通过添加.map{|f|来做到这一点File.basename(f)}如评论中所示,但是否有更简单的/better/faster/stronger怎么办?moduleFakeProfilePicturesclassPhotoDIR=File.expand_path(File.join(File.dirname(__FIL

ruby - 在 JRuby 中,如何确定导致 java.lang.ThreadDeath 的原因?

在为一些与JRuby中的临时文件交互的代码运行单元测试时,我有时会得到以下信息:Exception:java.lang.ThreadDeaththrownfromtheUncaughtExceptionHandlerinthread"Thread-6395"它似乎没有引起任何问题,但这是怎么回事,我如何确定它发生在哪里?我尝试打开-d,但这并没有给我异常的堆栈跟踪。 最佳答案 FWIW:这可能与http://jira.codehaus.org/browse/JRUBY-7074有关.我偶尔会在不使用反引号但调用系统的JRuby程序中

ruby - 如何使用带有 sdk 的 S3 将整个 "folder"复制到另一个路径?

当我对单个文件执行此操作时:aws_s3=AWS::S3.new(S3_CONFIG)bucket=aws_s3.buckets[S3_CONFIG["bucket"]]object=bucket.objects["user/1/photos/image_1.jpg"]new_object=bucket.objects["users/1/photos/image_1.jpg"]object.copy_tonew_object,{:acl=>:public_read}但我想移动整个“/photos”文件夹时抛出NoSuchKey。可能s3key只是每个文件的完整路径。如何做到这一点?aw

ruby-on-rails - 如何在命名空间和根路径的路由中同时拥有一个资源 - Rails 4

我正在命名空间“admin”中创建自定义管理面板。我在该namespace中有资源“类(class)”。但我还想要一个不在该命名空间中的“类(class)”的路由:例如:localhost:3000/admin/courses和localhost:3000/courses如果这需要不同的Controller也没关系。我担心的是,如果我在同一条路线上拥有两种资源,它就不是真正的DRY。namespaceadmindoresources:coursesend只是resources:courses有没有一种方法可以在命名空间和没有命名空间之间共享一个资源,或者上面的例子是可行的方法吗?

ruby - 如何将 Mechanize 中的相对链接转换为绝对链接?

有没有一种方法可以将Mechanize相对链接对象转换为另一个包含绝对URL的对象。Mechanize必须知道绝对链接,因为我也可以在相对链接上调用click方法。 最佳答案 您可以将页面uri(始终是绝对的)与链接uri合并:page.uri.mergelink.uri 关于ruby-如何将Mechanize中的相对链接转换为绝对链接?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questio

Ruby,删除部分文件路径

$local_path_to_css_file=File.expand_path(filename)给我A/B/C/D/CSS/filename或A/B/C/D/CSS/layouts/filename我想要的结果是:css/filename或css/layouts/filename删除css/之前的所有内容。 最佳答案 您可以使用路径名require'pathname'absolute_path=Pathname.new(File.expand_path(filename))project_root=Pathname.new("/

ruby-on-rails - Ruby on Rails 路径助手

我知道这是一个小问题,但为什么,如果你在RoR中使用脚手架,你可以在链接标签中使用像'new_modelnamehere_path'这样的行,但不使用脚手架,我得到一个NameError?例如,我有一个使用基本CRUD操作的简单地址簿应用程序。我是RoR的初学者,但想在没有脚手架的情况下构建应用程序,而这些事情似乎行不通。我将我的config/routes.rb和app/helpers/*与脚手架应用程序中的那些进行了比较,它们没有什么不同。我错过了什么? 最佳答案 检查路线和路径的一种方法是运行:rakeroutes它输出你所有的

ruby - 如何在 ruby​​ on rails 应用程序中指定公共(public)目录的路径?

我想解析public文件夹中的.csv文件,我试过/../的,#{RAILS_ROOT}/public但没有成功(没有这样的文件或目录错误)。我不知道如何使用Rails.public_path(Rails.public_path/filename.csv不起作用)请帮助 最佳答案 您可以访问Rails.root路径,使用它来获取路径Rails.root.join("public","filename.csv")您可能需要调用to_s,具体取决于您希望如何使用结果(作为Path对象或作为字符串)。

ruby - 如何删除 gem 路径?

如何删除GEMPATHS:的第二个路径(/home/tom/.gem/ruby/1.8)?这是$gemenv的输出:RubyGemsEnvironment:-RUBYGEMSVERSION:1.3.5-RUBYVERSION:1.8.7(2009-06-12patchlevel174)[i486-linux]-INSTALLATIONDIRECTORY:/usr/lib/ruby/gems/1.8-RUBYEXECUTABLE:/usr/bin/ruby1.8-EXECUTABLEDIRECTORY:/usr/bin-RUBYGEMSPLATFORMS:-ruby-x86-linux-