Uploaded image for project: 'Forge'
  1. Forge
  2. FORGE-1425

Shell issues on Windows

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Blocker
    • 2.0.0.CR1
    • 2.0.0.CR2
    • UI - Shell
    • None

    Description

      When running Forge on Windows 7, I experienced the following issues:

      • The history doesn't work. That is, when you press up and down arrows instead of the previous commands, you get this: αH
      • Backspace doesn't work. When I press it, the cursor just comes back to the previous position without deleting the character there. If I just write something there, the old symbol is overwritten by the new one, but at the end after pressing enter it looks like you never entered anything after pressing backspace. For example:
        1) I write new-project --namek
        2) I notice the typo and press backspace
        3) k doesn't get deleted, but I overwrite it with d
        4) Then I complete my command to look like this: new-project --named test
        5) Forge's output is: Project name must be specified.
      • As you know on Windows the full path to a file or directory is <drive-letter>:\<dir1>\<dir2>

      1) If I try to do cd c:\temp\forge, Forge blows with exception:
      org.jboss.forge.addon.resource.ResourceException: [FileResourceImpl] can have no
      children
      at org.jboss.forge.addon.resource.AbstractFileResource.getChild(Abstract
      FileResource.java:78)
      at org.jboss.forge.addon.shell.util.PathspecParser.resolve(PathspecParse
      r.java:232)
      at org.jboss.forge.addon.shell.commands.CdCommand.execute(CdCommand.java
      :71)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
      java:57)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
      sorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)

      2) Somehow I noticed that I may use the paths without the drive letter, e.g. just \<dir1>\<dir2>. It is legal to do it in Windows, but thus you can't change to a directory located on a different drive. For example cd \temp\forge will change to c:\temp\forge if you are currently in c:. So I tried cd \temp\forge, but the result was the same exception.
      3) If I am in the root directory (c:) and I run cd temp\forge, I don't get exception, but **ERROR** tempforge\: No such file or directory. The interesting thing is that I ran that command by pressing tab, i.e. counting on the command completion of the shell, which obviously works fine.

      I made the cd command work by just running cd /temp/forge (notice the forward slashes)

      Attachments

        Issue Links

          Activity

            People

              spederse@redhat.com Stale Pedersen
              ivan_stefanov Ivan St. Ivanov (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: