From: Alistair Bush <ali_bush@gentoo.org>
To: gentoo-java@lists.gentoo.org
Subject: Re: [gentoo-java] Virtual troubles
Date: Mon, 14 Jan 2008 23:27:42 +1300 [thread overview]
Message-ID: <478B391E.3070509@gentoo.org> (raw)
In-Reply-To: <4788F734.1020606@gentoo.org>
Vlastimil Babka wrote:
> Hi,
>
> Discovered some problems with virtuals today.
:)
>
> First one is in the depend-java-query tool, which can't correctly parse
> dependencies as =java-virtuals/servlet-api-2.3* - transforms to
> "servlet-api-2.3*" which it can't find, and raises exception - see how
> it ends up in bug 205453 :) So, only deps like
> "~java-virtuals/servlet-api-2.3" work. Should be fixed, or we decide to
> go with slot deps and start sticking EAPI=1 in our ebuilds? I'm not sure
> it can even parse 'java-virtuals/servlet-api:2.3' in current version :)
Have update java-config to (hopefully) do both :)
java-config -p package:slot works at least (is a little dump tho as
package:0 won't currently work)
>
> The other trouble I have is with eclass functions. It's confusing that
> java-pkg_getjars() doesn't have --virtual parameter, but if you look
> into what the parameter does, you realize it really doesn't need it.
> Still, confusing :)
> The worse trouble is with the functions that actually take the
> parameter, java-pkg_jar-from $package $jar and java-pkg_getjar. By
> passing --virtual, you say "I can't know what the particular provider's
> jar names are, so depend on the whole package", but still you have to
> pass an actual 'foo.jar' parameter. That's strange. What if there's new
> provider with different jar name? What if the virtual is satisfied by
> the VM itself? Suddenly you get an error, or am I wrong?
Let me clarify this as "I can't know the name of any implementing jars
(if they are separate) but I do know the name of the api as that is fixed"
So basically
sun-javamail and gnu-javamail implement (surprise surprise) the javamail
api. sun-javamail has one jar (mail.jar, API and Implementation)
gnu-javamail has 2 (mail.jar, the API and another, the actual
implementation)
so
java-pkg_jarfrom --virtual javamail mail.jar will retrieve mail.jar
without recording the dependency as just that jar (as we can't know
whether they are separate or not)
as the other functions don't record jar level deps the option is mute.
Basically this means that if package is to be suitable for
java-virtualizing then it must provide a jar that is similarly (or more
exactly 'exactly') named as every other providers ${API}.jar
javamail -> mail.jar
servlet-api -> serlvetapi.jar jsp.jar
grandma's special recipe -> gsr.jar
>
> VB
Sorry It has taken me time to reply, decided it was better to fix
before explain.
--
gentoo-java@lists.gentoo.org mailing list
next prev parent reply other threads:[~2008-01-14 10:29 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-12 17:21 [gentoo-java] Virtual troubles Vlastimil Babka
2008-01-14 10:27 ` Alistair Bush [this message]
2008-01-14 11:06 ` Vlastimil Babka
2008-01-14 11:24 ` Alistair Bush
2008-01-15 13:05 ` Andrew Cowie
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=478B391E.3070509@gentoo.org \
--to=ali_bush@gentoo.org \
--cc=gentoo-java@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox