[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [equinox-dev] dependency on org.osgi.annotation?

On 05/09/2015 08:50 AM, Tom Schindl wrote:
PDE can have compile time dependencies in its build.properties but naturally build.properties is not part of the final jar

I see. So o.e.osgi has this in its build.properties:

jars.extra.classpath = osgi/osgi.annotation.jar

Brainstorming:
- would it make sense to include build.properties at least in the source bundle?
- how can s.o. consuming org.eclipse.osgi.source_XY.jar use this to find "osgi/osgi.annotation.jar"?
- would it be (legally?) possible to include the files from the annotation jar in the source bundle?

On 05/09/2015 07:15 PM, Thomas Watson wrote:
I think there likely would need to be some way for a jar to indicate the package is compile time only API, perhaps with a separate header in the manifest.

Sounds great. If I understand correctly, o.e.osgi would, e.g., contain types like org.osgi.annotation.versioning.ProviderType and mark the package as "compile time only"?

BTW, how would this transfer to the case of null annotations?
I wouldn't suggest that all bundles using null annotations
at compile time should *include* these in their bundle.
In that case marking a *dependency* (full-blown with version range
and all that) as "compile time only" seems more natural, no?

I guess the difference is: o.e.jdt.annotation is available
as a bundle from p2 repositories, whereas osgi.annotation.jar
seems not, right?

Stephan