question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Implicit manifest rule creation breaks buck project entirely

See original GitHub issue

https://github.com/facebook/buck/commit/f79104819f0a5fc67f62d7c628aaacd354fe5516 breaks buck project even when the build command works fine

Generating project: finished in 12.6 sec
[2017-11-17 10:44:15.935][error][command:null][tid:145][com.facebook.buck.cli.Main] Uncaught exception at top level
java.lang.IllegalArgumentException: android_binary //app:bin_exo did not specify manifest or manifest_skeleton
	at com.facebook.buck.ide.intellij.DefaultIjModuleFactoryResolver.lambda$0(DefaultIjModuleFactoryResolver.java:85)
	at java.util.Optional.orElseThrow(Optional.java:290)
	at com.facebook.buck.ide.intellij.DefaultIjModuleFactoryResolver.getAndroidManifestPath(DefaultIjModuleFactoryResolver.java:83)
	at com.facebook.buck.ide.intellij.lang.android.AndroidBinaryModuleRule.apply(AndroidBinaryModuleRule.java:51)
	at com.facebook.buck.ide.intellij.DefaultIjModuleFactory.createModuleUsingSortedTargetNodes(DefaultIjModuleFactory.java:77)
	at com.facebook.buck.ide.intellij.DefaultIjModuleFactory.createModule(DefaultIjModuleFactory.java:54)
	at com.facebook.buck.ide.intellij.IjModuleGraphFactory.lambda$7(IjModuleGraphFactory.java:113)
	at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
	at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
	at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
	at com.facebook.buck.ide.intellij.IjModuleGraphFactory.createModules(IjModuleGraphFactory.java:110)
	at com.facebook.buck.ide.intellij.IjModuleGraphFactory.from(IjModuleGraphFactory.java:227)
	at com.facebook.buck.ide.intellij.IjProject.write(IjProject.java:93)
	at com.facebook.buck.ide.intellij.IjProjectCommandHelper.writeProjectAndGetRequiredBuildTargets(IjProjectCommandHelper.java:269)
	at com.facebook.buck.ide.intellij.IjProjectCommandHelper.runIntellijProjectGenerator(IjProjectCommandHelper.java:233)
	at com.facebook.buck.ide.intellij.IjProjectCommandHelper.parseTargetsAndRunProjectGenerator(IjProjectCommandHelper.java:200)
	at com.facebook.buck.cli.ProjectCommand.runWithoutHelp(ProjectCommand.java:316)
	at com.facebook.buck.cli.AbstractCommand.run(AbstractCommand.java:232)
	at com.facebook.buck.cli.AbstractContainerCommand.run(AbstractContainerCommand.java:79)
	at com.facebook.buck.cli.BuckCommand.run(BuckCommand.java:82)
	at com.facebook.buck.cli.Main.runMainWithExitCode(Main.java:1101)
	at com.facebook.buck.cli.Main.runMainThenExit(Main.java:395)
	at com.facebook.buck.cli.Main.nailMain(Main.java:1855)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.martiansoftware.nailgun.NGSession.run(NGSession.java:329)

Issue Analytics

  • State:closed
  • Created 6 years ago
  • Comments:9 (9 by maintainers)

github_iconTop GitHub Comments

2reactions
dreisscommented, Nov 17, 2017

Yeah, I thought so too, which is why I felt confident landing the broken version.

The subexpression

arg.getManifestSkeleton()
    .orElseThrow(
        () ->
            new IllegalArgumentException(
                "android_binary "
                    + targetNode.getBuildTarget()
                    + " did not specify manifest or manifest_skeleton"));

is not a lambda. It’s evaluated unconditionally, so we throw if manifest_skeleton is not specified.

2reactions
dreisscommented, Nov 17, 2017

Trying to get this landed internally. Sorry for the breakage.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Buck: .buckconfig
buckconfig file in the project directory overrides a .buckconfig file in the user's HOME directory. Configuration specified on the command line using --config...
Read more >
International Law Conditions for the Creation of States
States and internationalized territories are quite often created pursuant to ... question as to whether a manifest and continued abuse of sovereign power, ......
Read more >
14th Amendment US Constitution - GovInfo
affecting neither liberty nor property, the Court found the rule of presumed validity quite serviceable, but for invalidating legislation.
Read more >
Homesteading the Noosphere by Eric S. Raymond
The trivial case is that in which the project has a single owner/maintainer. In that case there is no possible conflict. The owner...
Read more >
You don't have to spend a buck to have a cost - pdfsecret
You don't have to spend a buck to have a cost. Opportunity cost revisited. In economics costs include (if you choose to go...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found