Skip to content

Commit 8aa51b2

Browse files
hanslovskyctrueden
authored andcommitted
Add --resolve-only option
When the option is provided, only the workspace is created and the location is printed to the command line. This can then be used, for example, as classpath for another tool. ```shell $ jgo --resolve-only org.scijava:parsington /home/hanslovskyp/.jgo/org/scijava/parsington/RELEASE $ ls /home/hanslovskyp/.jgo/org/scijava/parsington/RELEASE mainClass parsington-1.0.4.jar pom.xml ``` This is experimental (for now) but might be merged at some point in the future
1 parent 4c6a0e2 commit 8aa51b2

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

Diff for: jgo/jgo.py

+7
Original file line numberDiff line numberDiff line change
@@ -271,6 +271,7 @@ def jgo_parser():
271271
parser.add_argument( '--additional-endpoints', nargs='+', help='Add additional endpoints', default=[], required=False)
272272
parser.add_argument('--ignore-jgorc', action='store_true', help='Ignore ~/.jgorc')
273273
parser.add_argument('--link-type', default=None, type=str, help='How to link from local maven repository into jgo cache. Defaults to the `links\' setting in ~/.jgorc or \'auto\' if not specified.', choices=('hard', 'soft', 'copy', 'auto'))
274+
parser.add_argument('--resolve-only', action='store_true', help='Only resolve dependencies and print workspace location. Will not run any code.', required=False)
274275

275276
return parser
276277

@@ -552,6 +553,12 @@ def run(parser, argv=sys.argv[1:], stdout=None, stderr=None):
552553
shortcuts = shortcuts,
553554
verbose = args.verbose,
554555
link_type = link_type)
556+
if args.resolve_only:
557+
print(workspace)
558+
class MockObject(object):
559+
def check_returncode(self):
560+
pass
561+
return MockObject()
555562

556563
main_class_file = os.path.join(workspace, primary_endpoint.main_class, 'mainClass') if primary_endpoint.main_class else os.path.join(workspace, 'mainClass')
557564

0 commit comments

Comments
 (0)