jruby/jruby · error · IOError

{ioe localized message}

Error message

{ioe localized message}

What it means

Error "{ioe localized message}" thrown in jruby/jruby.

Source

Thrown at core/src/main/java/org/jruby/RubyFile.java:1059

        JRubyFile dest = JRubyFile.create(cwd, newNameJavaString);
        if (oldFile.renameTo(dest)) return asFixnum(context, 0);           // rename is successful

        // rename via Java API call wasn't successful, let's try some tricks, similar to MRI

        if (newFile.exists()) {
            context.runtime.getPosix().chmod(newNameJavaString, 0666);
            newFile.delete();
        }

        // Try atomic move from JDK
        Path oldPath = Paths.get(oldFile.toURI());
        Path destPath = Paths.get(dest.getAbsolutePath());
        try {
            Files.move(oldPath, destPath, StandardCopyOption.ATOMIC_MOVE);
            return asFixnum(context, 0);
        } catch (IOException ioe) {
            throw Helpers.newIOErrorFromException(context.runtime, ioe);
        }
    }

    @JRubyMethod(meta = true)
    public static RubyArray split(ThreadContext context, IRubyObject recv, IRubyObject arg) {
        RubyString filename = get_path(context, arg);

        return newArray(context, dirname(context, recv, filename), basename(context, recv, filename));
    }

    @JRubyMethod(meta = true)
    public static IRubyObject symlink(ThreadContext context, IRubyObject recv, IRubyObject from, IRubyObject to) {
        Ruby runtime = context.runtime;

        RubyString fromStr = get_path(context, from);
        RubyString toStr = get_path(context, to);
        String tovalue = toStr.toString();
        tovalue = JRubyFile.create(runtime.getCurrentDirectory(), tovalue).getAbsolutePath();

View on GitHub (pinned to fb650c13e0)

Solutions

  1. The underlying file operation failed with an IOException. Check that the path exists, is of the expected type (file vs directory), and that the process has read/write permission; inspect the wrapped IOException message for the specific cause.

When it happens

Trigger: Thrown at core/src/main/java/org/jruby/RubyFile.java:1059 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of jruby/jruby@fb650c13e0 (2026-08-23). Data as JSON: /api/errors/a421292d28f1c3d2. Report an issue: GitHub.