proglang / jgs

Gradual Java
BSD 3-Clause "New" or "Revised" License
1 stars 4 forks source link

Minimize run-time dependencies #9

Open luminousfennell opened 7 years ago

luminousfennell commented 7 years ago

Currently, jdeps reports the following dependencies when instrumenting a single-class app:


~/opt/openjdk8/bin/jdeps DynamicAnalyzer/main/testclasses/AccessFieldsOfObjectsFail.jar | grep 'not found' | sort | uniq -> org.apache.commons.cli not found -> org.apache.tools.ant not found -> org.apache.tools.ant.taskdefs not found -> org.apache.tools.ant.types not found -> org.junit not found -> org.junit.runner not found -> org.junit.runners not found -> scala.collection.convert not found -> scala.collection.generic not found -> scala.collection.immutable not found -> scala.collection.mutable not found -> scala.collection not found -> scala.math not found -> scala not found -> scala.reflect not found -> scala.runtime not found -> scala.util not found -> soot.jimple not found -> soot not found -> soot.toolkits.graph not found -> soot.util not found


We should not need or require those.

luminousfennell commented 7 years ago

We also should write a test that checks we do not introduce depencencies by accidents. We could check the output of jdeps, for example.