Właśnie zaczynam od Tycho i jestem zaskoczony na wczesnym etapie. Być może coś nie rozumiem, więc na wszelki wypadek, oto, czego się spodziewam: definiuję potrzeby mojego pakietu w stylu OSGi (tj. W MANIFEST.MF
przez Import-Package
), a Tycho w jakiś sposób wykorzystuje te informacje w locie zamiast mnie, potrzebuję przedefiniować to wszystko w stylu Mavena (tzn. nie muszę umieszczać zależności w pom.xml).Tycho - "Niezaspokojone ograniczenie" na pakiecie importu
Tak, zrobiłem prosty projekt Maven, Eclipse z wtyczką m2eclipse, m2eclipse-Tycho dodać na i wtyczki PDE i umieścić następującą Tycho rzeczy w pom:
<properties>
<tycho-version>0.15.0</tycho-version>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-maven-plugin</artifactId>
<version>${tycho-version}</version>
<extensions>true</extensions>
</plugin>
</plugins>
</build>
walczyli przez kilka zwariowane błędy konfiguracji, a wreszcie dostał w zasadzie pusty projekt (tj. bez kodu źródłowego), który nie dał żadnych błędów ani ostrzeżeń w Eclipse. Następnie skopiowałem mój kod źródłowy z innego projektu i (zgodnie z oczekiwaniami) dostałem garść błędów kompilatora z powodu braku zależności. Pierwszym z nich był AbstractChannel z org.jboss.netty.channel. Używam wersji 3.5.1.Final od Netty, więc edytowane mój MANIFEST.MF obejmuje:
Import-Package: org.jboss.netty.channel;version="[3.5.1,4)"
I wtedy spodziewa Tycho jakoś magicznie dowiedzieć się, że muszę Netty i dlatego działają jak gdybym miał wstawiony coś jak następuje w moim Maven pom.xml:
<dependency>
<groupId>org.jboss.netty</groupId>
<artifactId>netty</artifactId>
<version>3.5.1.Final</version>
</dependency>
Zamiast tego wszystkiego, co się stało, mam jeden dodatkowy błąd w Eclipse, mówiąc:
Unsatisfied constraint: 'Import-Package: org.jboss.netty.channel;version="[3.5.1,4.0.0)"
nie wiem gdzie się udać od niego re. Czy mam jakieś podstawowe niezrozumienie tego, co powinien zrobić Tycho? Czy jest jeszcze coś, co muszę skonfigurować, aby móc wykonać "magiczne" tłumaczenie z wpisu Import-Package
w pozycji pom.xml ? Albo coś innego?
Z góry dziękuję.
Dzięki! Brakowało mi platformy docelowej. – user1628103