Hello! The problem accrued on experiment with Apache Ignite. Sorry for the large example.
The general problem (if I understand correctly) is that ceylon run or ceylon fat-jar do not add transitive Maven dependency if it is marked as an "exclusion" anywhere but is used anywhere else.
To make the broken project working, as workaround, we can exclude and readd the problem module in overrides.xml by adding remove and add tags together. Using add and set together also works. In the example they are commented.
I have found an assertion in #6597 issue:
Yes that one is due to a bug in Gradle which does not follow the import scopes.
We do, like Maven does, and so that one is excluded.
but in this case Maven project works and equivalent Ceylon project does not work without overrides.xml customization.
Hello! The problem accrued on experiment with Apache Ignite. Sorry for the large example.
The general problem (if I understand correctly) is that
ceylon run
orceylon fat-jar
do not add transitive Maven dependency if it is marked as an "exclusion" anywhere but is used anywhere else.How to reproduce is described in this repository
To make the broken project working, as workaround, we can exclude and readd the problem module in overrides.xml by adding
remove
andadd
tags together. Usingadd
andset
together also works. In the example they are commented.I have found an assertion in #6597 issue:
but in this case Maven project works and equivalent Ceylon project does not work without overrides.xml customization.