It's working now (I think). I was in the middle of a reply when you posted,
but I couldn't figure out how to make it maven-compatible. The code in the
gradle script I am now using is as follows:
org.apache.ivy.plugins.resolver.SshResolver resolver = new
org.apache.ivy.plugins.resolver.SshResolver()
resolver.name = 'Local Repo'
resolver.userPassword = 'adminpass'
resolver.setArtifactPatterns(['ssh://[EMAIL
PROTECTED]/path/to/repo/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]'])
resolver.m2compatible = true
uploadLibs {
uploadResolvers.add(resolver)
}
I have tested this both by having another gradle project depend on it and by
using maven by itself. The project I have published has no transitive
dependencies and nothing actually depends on it, so I can't say for sure if
it works perfectly, but it publishes and it can be found otherwise and I am
happy :)
Jerod
hdockter wrote:
>
> Hi Jerod,
>
> On Jun 24, 2008, at 5:30 PM, JerodLass wrote:
>
>>
>> I just checked out the latest gradle and I no longer have the JSch
>> exception
>> after putting the jar in gradles lib folder (not sure if I had to
>> or not, I
>> did it before testing). I have a null: no artifact pattern
>> exception when I
>> try to publish using the lines:
>>
>> org.apache.ivy.plugins.resolver.SshResolver resolver = new
>> org.apache.ivy.plugins.resolver.SshResolver()
>> resolver.user = 'username'
>> resolver.userPassword = 'pw'
>> resolver.host = scpURL
>>
>> uploadLibs {
>> uploadResolvers.add(resolver)
>> }
>>
>> I see that artifact pattern is a child property in xml of this
>> resolver, but
>> how can I set this in a gradle script? What is the standard maven
>> repository pattern?
>
> resolver.addArtifactPattern('http://reporoot/' + '[organisation]/
> [module]/[revision]/[artifact]-[revision].[ext]')
> resolver.m2compatible = true
>
> I'm haven't tried it myself. It is a very important use case. Please
> ping me if something is going wrong.
>
> Thanks
>
> - Hans
>
>>
>> -Jerod
>>
>>
>> JerodLass wrote:
>>>
>>> Putting the jsch-0.1.38 jar in gradle's lib folder did not work.
>>> Do I
>>> need to do anything to specifically add it to gradle's classpath?
>>>
>>>
>>>
>>> JerodLass wrote:
>>>>
>>>> I'm sorry I haven't responded. I have since found more pressing
>>>> tasks to
>>>> work on, so I haven't gotten to trying putting the JSch in with
>>>> gradle's
>>>> libraries. I expect this to be an issue soon, so this week is a
>>>> good
>>>> candidate for looking more at this issue.
>>>>
>>>> Jerod
>>>>
>>>>
>>>>
>>>> hdockter wrote:
>>>>>
>>>>>
>>>>> On Jun 19, 2008, at 6:57 PM, Hans Dockter wrote:
>>>>>
>>>>>>
>>>>>> On Jun 19, 2008, at 4:49 PM, Hans Dockter wrote:
>>>>>>
>>>>>>>
>>>>>>> On Jun 19, 2008, at 4:12 PM, JerodLass wrote:
>>>>>>>
>>>>>>>>
>>>>>>>> I finally got back around to trying this, and the compiler has
>>>>>>>> trouble
>>>>>>>> finding the class SshResolver. If I use the full path of the
>>>>>>>> class in the
>>>>>>>> second SshResolver in the line, it then has trouble finding the
>>>>>>>> class
>>>>>>>> com.jcraft.jsch.JSchException, which is in a different library.
>>>>>>>> I have
>>>>>>>> declared a dependency on Ivy in my settings file (though I tried
>>>>>>>> without it
>>>>>>>> first) and I also put in a dependency on jsch 0.1.38, which I
>>>>>>>> would think
>>>>>>>> would be resolved as a transitive dependency, but we still
>>>>>>>> have a
>>>>>>>> problem
>>>>>>>> with JSchException. How can I get this ivy class to work for
>>>>>>>> me?
>>>>>>>
>>>>>>> Ivy is per default in the build script classpath. It does not
>>>>>>> need
>>>>>>> to be added to the settings.gradle.
>>>>>>>
>>>>>>> Adding JSch to the settings.gradle file is what I would have done
>>>>>>> as well. I don't know yet why this does not work. I gonna try
>>>>>>> this
>>>>>>> out soon.
>>>>>>
>>>>>> I had no time yet to try it out myself. I assume it is a Gradle
>>>>>> problem with its classloaders. Could you try putting JSch in the
>>>>>> lib folder of the Gradle distribution and see if it works. You may
>>>>>> comment it out in the settings.gradle file.
>>>>>
>>>>> I could reproduce this error. This is a bug in Gradle. I plan to
>>>>> fix
>>>>> this bug Monday morning. Does the work around work for you (putting
>>>>> JSch in the lib folder of the gradle distribution) ?
>>>>>
>>>>> - Hans
>>>>>
>>>>>>
>>>>>> - Hans
>>>>>>
>>>>>>>
>>>>>>> - Hans
>>>>>>>
>>>>>>>>
>>>>>>>> -Jerod
>>>>>>>>
>>>>>>>>
>>>>>>>> hdockter wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Jun 12, 2008, at 3:45 PM, JerodLass wrote:
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> I am now exploring the idea of publishing to a repository, and
>>>>>>>>>> I was
>>>>>>>>>> wondering if there's an easy way to do this. What I have
>>>>>>>>>> tried so
>>>>>>>>>> far is
>>>>>>>>>> along the lines of:
>>>>>>>>>>
>>>>>>>>>> uploadLibs.configure{uploadResolvers.add(name:
>>>>>>>>>> 'PublishRepo', url:
>>>>>>>>>> 'http://server/published/maven/maven-repo', username:
>>>>>>>>>> 'repoadmin',
>>>>>>>>>> password:
>>>>>>>>>> 'adminpass')}
>>>>>>>>>>
>>>>>>>>>> Which would then add the resolver, associated with the
>>>>>>>>>> repository, for
>>>>>>>>>> uploadLibs to publish to. I noticed that gradle ends up
>>>>>>>>>> calling ivy's
>>>>>>>>>> publish in the DefaultDependencyManager class, and I was just
>>>>>>>>>> wondering how
>>>>>>>>>> I can ship something out to a repo in gradle. My options
>>>>>>>>>> are scp,
>>>>>>>>>> sftp, and
>>>>>>>>>> using webdav for an http publish (I also noticed some WebDav
>>>>>>>>>> classes). Any
>>>>>>>>>> tips would be much appreciated.
>>>>>>>>>
>>>>>>>>> You have to create for example an Ivy scp resolver in your
>>>>>>>>> gradlefile.
>>>>>>>>>
>>>>>>>>> org.apache.ivy.plugins.resolver.SshResolver resolver = new
>>>>>>>>> SshResolver()
>>>>>>>>> resolver.user = 'user'
>>>>>>>>> resolver.userPassword = 'pw'
>>>>>>>>> // further configuration
>>>>>>>>>
>>>>>>>>> uploadLibs {
>>>>>>>>> uploadResolvers.add(resolver)
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>> See http://ant.apache.org/ivy/history/latest-milestone/
>>>>>>>>> resolver/
>>>>>>>>> ssh.html for all configuration options.
>>>>>>>>>
>>>>>>>>> WebDav is not very well supported right now in Ivy. Gradle has
>>>>>>>>> created its own limited WebDav resolver but for what you
>>>>>>>>> want to do
>>>>>>>>> it is probably not sufficient.
>>>>>>>>>
>>>>>>>>> - Hans
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> -Jerod
>>>>>>>>>> --
>>>>>>>>>> View this message in context: http://www.nabble.com/publish-
>>>>>>>>>> tp17800341p17800341.html
>>>>>>>>>> Sent from the gradle-user mailing list archive at Nabble.com.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --------------------------------------------------------------
>>>>>>>>>> ----
>>>>>>>>>> ---
>>>>>>>>>> To unsubscribe from this list, please visit:
>>>>>>>>>>
>>>>>>>>>> http://xircles.codehaus.org/manage_email
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Hans Dockter
>>>>>>>>> Gradle Project lead
>>>>>>>>> http://www.gradle.org
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> ---------------------------------------------------------------
>>>>>>>>> ----
>>>>>>>>> --
>>>>>>>>> To unsubscribe from this list, please visit:
>>>>>>>>>
>>>>>>>>> http://xircles.codehaus.org/manage_email
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> View this message in context: http://www.nabble.com/publish-
>>>>>>>> tp17800341p18009909.html
>>>>>>>> Sent from the gradle-user mailing list archive at Nabble.com.
>>>>>>>>
>>>>>>>>
>>>>>>>> ----------------------------------------------------------------
>>>>>>>> ----
>>>>>>>> -
>>>>>>>> To unsubscribe from this list, please visit:
>>>>>>>>
>>>>>>>> http://xircles.codehaus.org/manage_email
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Hans Dockter
>>>>>>> Gradle Project lead
>>>>>>> http://www.gradle.org
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> -----------------------------------------------------------------
>>>>>>> ----
>>>>>>> To unsubscribe from this list, please visit:
>>>>>>>
>>>>>>> http://xircles.codehaus.org/manage_email
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> Hans Dockter
>>>>>> Gradle Project lead
>>>>>> http://www.gradle.org
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> ------------------------------------------------------------------
>>>>>> ---
>>>>>> To unsubscribe from this list, please visit:
>>>>>>
>>>>>> http://xircles.codehaus.org/manage_email
>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> Hans Dockter
>>>>> Gradle Project lead
>>>>> http://www.gradle.org
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> -------------------------------------------------------------------
>>>>> --
>>>>> To unsubscribe from this list, please visit:
>>>>>
>>>>> http://xircles.codehaus.org/manage_email
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>
>> --
>> View this message in context: http://www.nabble.com/publish-
>> tp17800341p18093582.html
>> Sent from the gradle-user mailing list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe from this list, please visit:
>>
>> http://xircles.codehaus.org/manage_email
>>
>>
>
> --
> Hans Dockter
> Gradle Project lead
> http://www.gradle.org
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe from this list, please visit:
>
> http://xircles.codehaus.org/manage_email
>
>
>
>
--
View this message in context:
http://www.nabble.com/publish-tp17800341p18097738.html
Sent from the gradle-user mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email