You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-user@ant.apache.org by Bart Verhoeven <ba...@live.com> on 2018/12/29 12:47:38 UTC

Re: Trouble getting ftp with vfs to work

For the record, I’m using ivy 2.5.0-rc1 with commons-vfs2-2.2, commons-net-3.6.

On 29 Dec 2018, at 20:38, Bart Verhoeven <ba...@live.com>> wrote:

Hi all,

I’m having some issues getting vfs + ftp to work with ivy. Trying to ivy:install artifacts via an ant build script to my ivy repo, but it always gives me "invalid vfs uri […] to put data to: resource has no content".

The full stacktrace:

Caused by: java.lang.IllegalArgumentException: invalid vfs uri ftp://username:password@host/organisation/module/revistion/module-revision.ext to put data to: resource has no content
at org.apache.ivy.plugins.repository.vfs.VfsRepository.put(VfsRepository.java:209)
at org.apache.ivy.plugins.repository.AbstractRepository.put(AbstractRepository.java:146)
at org.apache.ivy.plugins.resolver.RepositoryResolver.put(RepositoryResolver.java:236)
at org.apache.ivy.plugins.resolver.RepositoryResolver.publish(RepositoryResolver.java:217)
at org.apache.ivy.core.install.InstallEngine.install(InstallEngine.java:142)
at org.apache.ivy.Ivy.install(Ivy.java:536)
at org.apache.ivy.ant.IvyInstall.doExecute(IvyInstall.java:106)
... 23 more

Running ant in verbose mode, also gives me "Fail to check the existence of the resource […] (java.lang.NullPointerException: null)

I’ve defined my resolver as:

<vfs name="ftp">
  <ivy pattern="ftp://username:password@$host/[organisation]/[module]/[resivion]/ivy.xml"/>
  <artifact pattern="ftp://username:password@host/[organisation]/[module]/[revision]/[artifact]-[revision](-[classifier]).[ext]"/>
</vfs>

Using the commons-vfs (or commons-net) api directly, accessing my ftp server with the same connection details (host, user, password) works like a charm.

Any suggestions how I can further narrow down the cause?

-Bart


Re: Trouble getting ftp with vfs to work

Posted by Jaikiran Pai <ja...@apache.org>.
Hello Bart,

Do you have the Apache commons vfs library in the classpath? That's
needed for the FTP scheme. Can you also post/share the output of "ant
-debug yourtarget"?

-Jaikiran

On 29/12/18 6:17 PM, Bart Verhoeven wrote:
> For the record, I’m using ivy 2.5.0-rc1 with commons-vfs2-2.2, commons-net-3.6.
>
> On 29 Dec 2018, at 20:38, Bart Verhoeven <ba...@live.com>> wrote:
>
> Hi all,
>
> I’m having some issues getting vfs + ftp to work with ivy. Trying to ivy:install artifacts via an ant build script to my ivy repo, but it always gives me "invalid vfs uri […] to put data to: resource has no content".
>
> The full stacktrace:
>
> Caused by: java.lang.IllegalArgumentException: invalid vfs uri ftp://username:password@host/organisation/module/revistion/module-revision.ext to put data to: resource has no content
> at org.apache.ivy.plugins.repository.vfs.VfsRepository.put(VfsRepository.java:209)
> at org.apache.ivy.plugins.repository.AbstractRepository.put(AbstractRepository.java:146)
> at org.apache.ivy.plugins.resolver.RepositoryResolver.put(RepositoryResolver.java:236)
> at org.apache.ivy.plugins.resolver.RepositoryResolver.publish(RepositoryResolver.java:217)
> at org.apache.ivy.core.install.InstallEngine.install(InstallEngine.java:142)
> at org.apache.ivy.Ivy.install(Ivy.java:536)
> at org.apache.ivy.ant.IvyInstall.doExecute(IvyInstall.java:106)
> ... 23 more
>
> Running ant in verbose mode, also gives me "Fail to check the existence of the resource […] (java.lang.NullPointerException: null)
>
> I’ve defined my resolver as:
>
> <vfs name="ftp">
>   <ivy pattern="ftp://username:password@$host/[organisation]/[module]/[resivion]/ivy.xml"/>
>   <artifact pattern="ftp://username:password@host/[organisation]/[module]/[revision]/[artifact]-[revision](-[classifier]).[ext]"/>
> </vfs>
>
> Using the commons-vfs (or commons-net) api directly, accessing my ftp server with the same connection details (host, user, password) works like a charm.
>
> Any suggestions how I can further narrow down the cause?
>
> -Bart
>

Re: Trouble getting ftp with vfs to work

Posted by Bart Verhoeven <ba...@live.com>.
I debugged the ivy source code and got it to work by turning on passive mode programmatically. If I open up the firewall, it works straight out of the box with active mode as well.

-Bart

On 29 Dec 2018, at 20:47, Bart Verhoeven <ba...@live.com>> wrote:

For the record, I’m using ivy 2.5.0-rc1 with commons-vfs2-2.2, commons-net-3.6.

On 29 Dec 2018, at 20:38, Bart Verhoeven <ba...@live.com>> wrote:

Hi all,

I’m having some issues getting vfs + ftp to work with ivy. Trying to ivy:install artifacts via an ant build script to my ivy repo, but it always gives me "invalid vfs uri […] to put data to: resource has no content".

The full stacktrace:

Caused by: java.lang.IllegalArgumentException: invalid vfs uri ftp://username:password@host/organisation/module/revistion/module-revision.ext to put data to: resource has no content
at org.apache.ivy.plugins.repository.vfs.VfsRepository.put(VfsRepository.java:209)
at org.apache.ivy.plugins.repository.AbstractRepository.put(AbstractRepository.java:146)
at org.apache.ivy.plugins.resolver.RepositoryResolver.put(RepositoryResolver.java:236)
at org.apache.ivy.plugins.resolver.RepositoryResolver.publish(RepositoryResolver.java:217)
at org.apache.ivy.core.install.InstallEngine.install(InstallEngine.java:142)
at org.apache.ivy.Ivy.install(Ivy.java:536)
at org.apache.ivy.ant.IvyInstall.doExecute(IvyInstall.java:106)
... 23 more

Running ant in verbose mode, also gives me "Fail to check the existence of the resource […] (java.lang.NullPointerException: null)

I’ve defined my resolver as:

<vfs name="ftp">
  <ivy pattern="ftp://username:password@$host/[organisation]/[module]/[resivion]/ivy.xml"/>
  <artifact pattern="ftp://username:password@host/[organisation]/[module]/[revision]/[artifact]-[revision](-[classifier]).[ext]"/>
</vfs>

Using the commons-vfs (or commons-net) api directly, accessing my ftp server with the same connection details (host, user, password) works like a charm.

Any suggestions how I can further narrow down the cause?

-Bart