Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove dependency on the java.desktop module #7502

Closed
4 of 11 tasks
meisterT opened this issue Feb 22, 2019 · 3 comments
Closed
4 of 11 tasks

Remove dependency on the java.desktop module #7502

meisterT opened this issue Feb 22, 2019 · 3 comments
Assignees
Labels
P2 We'll consider working on this in future. (Assignee optional) team-Performance Issues for Performance teams

Comments

@meisterT
Copy link
Member

meisterT commented Feb 22, 2019

It contributes 13MB to the the size of the embedded JDK which is ~40MB in total right now.

This list describes the paths in the server.jar which contain classes that depend on the java.desktop module:

  • javax/xml/bind
  • com/android/ddmlib
  • com/android/ide/common/util
  • com/android/ide/common/rendering
  • com/android/ide/common/rendering/api
  • com/android/ide/common/vectordrawable
  • com/android/tools/lint/checks
  • com/android/sdklib/devices
  • com/android/builder/png
  • lombok/ast/ecj
  • lombok/ast/grammar

In turn javax.xml.bind is used by maven_jar (see #6799) and by the android_common dependency of android_sdk_repository.
lombok/.* comes from third_party/android_common/com.android.tools.external.lombok_lombok-ast_0.2.3.jar.

@meisterT meisterT added P2 We'll consider working on this in future. (Assignee optional) team-Performance Issues for Performance teams labels Feb 22, 2019
@meisterT meisterT added this to the Shrinking the bazel binary milestone Feb 22, 2019
@meisterT meisterT self-assigned this Feb 22, 2019
@jin
Copy link
Member

jin commented Feb 22, 2019

Making a change in android_common jars will typically incur a lot of changes internally - please let us (@ahumesky / myself) know if you stumble upon any roadblocks.

@meisterT
Copy link
Member Author

@jin to be clear: I still count on you / the Android team to work on unbundling the tools (#1055).
This issue is to keep track of the removal of the module itself and the outstanding blockers.

@jin
Copy link
Member

jin commented Feb 22, 2019

Ah, my bad, I misunderstood the assignment on this issue as you taking it up :) Thanks for clarifying! Unbundling the mobile tools will definitely be part of the ongoing Android Starlark migration (and land in bazelbuild/tools_android).

meisterT added a commit to meisterT/bazel that referenced this issue Apr 8, 2019
bazel-io pushed a commit that referenced this issue Apr 9, 2019
Progress towards #7502.
Closes #7970.

Change-Id: Idbc60a032bd19998aba3c67c3f33f46f760b7be2
meisterT added a commit to meisterT/bazel that referenced this issue Apr 17, 2019
The only dependency to java.desktop was coming from JAXB.java where a 25
line method from java.beans.Introspector was used to decapitalize a Java
class name.

Partly fixes bazelbuild#7502.
This works around bazelbuild#6799 which seems to take longer than expected because
there is some implementation work left to do.

RELNOTES: None
meisterT added a commit to meisterT/bazel that referenced this issue Apr 17, 2019
The only dependency to java.desktop was coming from JAXB.java where a 25
line method from java.beans.Introspector was used to decapitalize a Java
class name.

Partly fixes bazelbuild#7502.
This works around bazelbuild#6799 which seems to take longer than expected because
there is some implementation work left to do.

RELNOTES: None
@meisterT meisterT reopened this Apr 17, 2019
bazel-io pushed a commit that referenced this issue Apr 18, 2019
Since we remove the jdk.compiler module in
3880ddc, this is no longer included
anyway. Deleting it here breaks building the minimal jdk, which we need
to do for the java.desktop removal.

Commit 2/N

This is part of #7502 and #6314.

RELNOTES: None

Closes #8086.

PiperOrigin-RevId: 244156777
bazel-io pushed a commit that referenced this issue Apr 18, 2019
Disabling the jdeps test while doing so to get rid of the chicken-egg
problem that the necessary changes have to happen in third_party but
this test definition lives outside of third_party.

Commit 1/N

This is part of #7502 and #6314.

RELNOTES: None

Closes #8085.

PiperOrigin-RevId: 244156842
meisterT added a commit to meisterT/bazel that referenced this issue Apr 23, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P2 We'll consider working on this in future. (Assignee optional) team-Performance Issues for Performance teams
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants