okay so when I "see" library classes in my code, its IDE illusion?
g
gildor
07/02/2018, 1:26 AM
Why?
It’s real class of some particular version of a library
k
karelpeeters
07/02/2018, 1:29 AM
When you add libraries to the compile-time classpath you're basically promising that binary-compatible versions of those libraries will be present at runtime as well.
g
gildor
07/02/2018, 1:30 AM
Sure
u
ursus
07/02/2018, 1:31 AM
oh i see, its slim / fat jar thing right
g
gildor
07/02/2018, 1:32 AM
It’s actually apk + dex thing, but somehow similar to fat jar. Biggest difference there is no class files anymore, only one or multiple dex files
u
ursus
07/02/2018, 1:33 AM
yea I know how it works on android, I sort of forgot that fat jar issue, since apks contain everything physically
but now that I think about it, its same thing if I were to develop a library, I also compile against dependencies but dont include them physically
👍 1
g
gildor
07/02/2018, 1:35 AM
exactly, and it’s responsibility of user of your library and user’s build system to provide compatible version, but not necessary exactly same version of your library dependencies
u
ursus
07/02/2018, 1:37 AM
yes, thats why facebook dependencies burn me everytime I update appcompat 😄