angelozerr / tern.java

Use tern.js in Java context
http://ternjs.net/
Other
249 stars 52 forks source link

check out on Windows - Filename too long #35

Closed paulvi closed 10 years ago

paulvi commented 10 years ago

D:\workspaces\Enide-Studio-2014-011\tern.java-CRLF>git checkout -f HEAD fatal: cannot create directory at 'eclipse/tern.eclipse.ide.server.nodejs.embed.linux.gtk.x86/nodejs/node-v0.10.22-linux-x86/lib/node_modules/npm/node_modules/request/node_modules/form-data/node_modules/combined-stream/node_modules/delayed-stream': Filename too long

FYI, on Windows 7 32bit

There were no such problem before on Windows.

paulvi commented 10 years ago

It seems to be git version related.

angelozerr commented 10 years ago

@PaulVI do you know how to resolve it?

paulvi commented 10 years ago

It seems to be only on Win 32x On Win 64 it is OK.

No way to resolve, just to know (add to README?) that there are long names, that on Windows can run into this problem.

angelozerr commented 10 years ago

Ok. I close this issue. Thank's to speak about this problem.

gamerson commented 10 years ago

I see the same error and I'm on win64. Windows msysgit just can't handle the long file names. But here is how we can solve it, because I had to solve it this way.

Then we can check in the files without any problem. You can see some example of this type of code here: https://github.com/liferay/liferay-ide/blob/master/tools/plugins/com.liferay.ide.alloy.core/src/com/liferay/ide/alloy/core/LautRunner.java

The class LautRunner will check for existence of "laut" directory under the OS fragments. If the directory doesn't exist it will unzip it and return a path to the executable.

But see the fragment is empty: https://github.com/liferay/liferay-ide/tree/master/tools/plugins/com.liferay.laut.win32.win32.x86_64

what do you think?

On Thu, Apr 10, 2014 at 8:43 PM, Paul Verest notifications@github.comwrote:

It seems to be only on Win 32x On Win 64 it is OK.

No way to resolve, just to know (add to README?) that there are long names, that on Windows can run into this problem.

Reply to this email directly or view it on GitHubhttps://github.com/angelozerr/tern.java/issues/35#issuecomment-40073116 .

Greg Amerson Liferay Developer Tools Liferay, Inc. www.liferay.com

gamerson commented 10 years ago

Angelo, can we reopen to continue this discussion? I believe I may be able to contribute this functionality, because this problem is hurting me at the moment, I can't see those OS fragments. msysgit fails on checkout.

On Thu, Apr 10, 2014 at 8:52 PM, Greg Amerson gregory.amerson@liferay.comwrote:

I see the same error and I'm on win64. Windows msysgit just can't handle the long file names. But here is how we can solve it, because I had to solve it this way.

  • don't check in the node files as a directory
  • instead check in a node.js zip file that contains the contents of the node/\ directory
  • and then have some Plugin Activator code in the node bundles/fragments that first checks for a directory under the bundle
  • if the directory doesn't exist, then unzip the contents of the zip

Then we can check in the files without any problem. You can see some example of this type of code here:

https://github.com/liferay/liferay-ide/blob/master/tools/plugins/com.liferay.ide.alloy.core/src/com/liferay/ide/alloy/core/LautRunner.java

The class LautRunner will check for existence of "laut" directory under the OS fragments. If the directory doesn't exist it will unzip it and return a path to the executable.

But see the fragment is empty:

https://github.com/liferay/liferay-ide/tree/master/tools/plugins/com.liferay.laut.win32.win32.x86_64

what do you think?

On Thu, Apr 10, 2014 at 8:43 PM, Paul Verest notifications@github.comwrote:

It seems to be only on Win 32x On Win 64 it is OK.

No way to resolve, just to know (add to README?) that there are long names, that on Windows can run into this problem.

Reply to this email directly or view it on GitHubhttps://github.com/angelozerr/tern.java/issues/35#issuecomment-40073116 .

Greg Amerson Liferay Developer Tools Liferay, Inc. www.liferay.com

Greg Amerson Liferay Developer Tools Liferay, Inc. www.liferay.com

paulvi commented 10 years ago

@gamerson I think that solution with .zip file should be open as new issue.

Other solution could be handling npm modules on runtime with npm or some alternative, i.e. not package them.

gamerson commented 10 years ago

Agree, if Angelo would rather not host node all together that could be an option. If node is still going to be embedded, I would like to pursue the zip option.

angelozerr commented 8 years ago

I don't understand you rproblem, today we use zip file.

paulvi commented 8 years ago

@natasha544 Please raise new issue

AndrewJobel commented 6 years ago

I recommend LongPathTool, Please try.