{"record":{"id":"e9079bc01a5548a8","repo":"apache/maven","slug":"unknown-resolver-transport-supported-transpo","errorCode":null,"errorMessage":"Unknown resolver transport '{}'. Supported transports are: wagon, apache, jdk, auto","messagePattern":"Unknown resolver transport '(.+?)'\\. Supported transports are: wagon, apache, jdk, auto","errorType":"exception","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"impl/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java","lineNumber":335,"sourceCode":"            // Make sure (whatever extra priority is set) that resolver file/jdk is selected\n            configProps.put(FILE_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY);\n            configProps.put(JDK_HTTP_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY);\n        } else if (MAVEN_RESOLVER_TRANSPORT_APACHE.equals(transport)\n                || MAVEN_RESOLVER_TRANSPORT_NATIVE.equals(transport)) {\n            if (MAVEN_RESOLVER_TRANSPORT_NATIVE.equals(transport)) {\n                logger.warn(\n                        \"Transport name '{}' is DEPRECATED/RENAMED, use '{}' instead\",\n                        MAVEN_RESOLVER_TRANSPORT_NATIVE,\n                        MAVEN_RESOLVER_TRANSPORT_APACHE);\n            }\n            // Make sure (whatever extra priority is set) that resolver file/apache is selected\n            configProps.put(FILE_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY);\n            configProps.put(APACHE_HTTP_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY);\n        } else if (MAVEN_RESOLVER_TRANSPORT_WAGON.equals(transport)) {\n            // Make sure (whatever extra priority is set) that wagon is selected\n            configProps.put(WAGON_TRANSPORTER_PRIORITY_KEY, RESOLVER_MAX_PRIORITY);\n        } else if (!MAVEN_RESOLVER_TRANSPORT_AUTO.equals(transport)) {\n            throw new IllegalArgumentException(\"Unknown resolver transport '\" + transport\n                    + \"'. Supported transports are: \" + MAVEN_RESOLVER_TRANSPORT_WAGON + \", \"\n                    + MAVEN_RESOLVER_TRANSPORT_APACHE + \", \" + MAVEN_RESOLVER_TRANSPORT_JDK + \", \"\n                    + MAVEN_RESOLVER_TRANSPORT_AUTO);\n        }\n\n        sessionBuilder.setIgnoreArtifactDescriptorRepositories(request.isIgnoreTransitiveRepositories());\n\n        sessionBuilder.setTransferListener(request.getTransferListener());\n\n        RepositoryListener repositoryListener = eventSpyDispatcher.chainListener(new LoggingRepositoryListener(logger));\n\n        boolean recordReverseTree = Boolean.parseBoolean(\n                mergedProps.getOrDefault(Constants.MAVEN_REPO_LOCAL_RECORD_REVERSE_TREE, Boolean.FALSE.toString()));\n        if (recordReverseTree) {\n            repositoryListener = new ChainedRepositoryListener(repositoryListener, new ReverseTreeRepositoryListener());\n        }\n        sessionBuilder.setRepositoryListener(repositoryListener);\n","sourceCodeStart":317,"sourceCodeEnd":353,"githubUrl":"https://github.com/apache/maven/blob/e4093d4e120eac99d6bdce5ba67cace2f3085c97/impl/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java#L317-L353","documentation":"IllegalArgumentException raised while configuring the Maven Resolver session: the maven.resolver.transport property (merged from user/system properties and settings) is not one of the supported names. Accepted values are wagon, apache, jdk, auto, plus the tolerated aliases 'native' (deprecated, warned) and 'default' (treated as auto); anything else aborts repository-session creation before any build.","triggerScenarios":"-Dmaven.resolver.transport=<bad> on the command line, in .mvn/maven.config, in MAVEN_OPTS, settings.xml, or CI environment variables with a typo like 'http', 'apache-http', or 'native-http'.","commonSituations":"Copy-pasted flags from outdated documentation or blog posts; CI pipelines carrying stale MAVEN_OPTS; scripts written for Maven/resolver versions where transport names differed.","solutions":["Set a supported value: -Dmaven.resolver.transport=apache (or jdk, wagon, auto)","Or remove the property entirely; the default behaves as auto","Search .mvn/maven.config, ~/.m2/settings.xml, CI env and MAVEN_OPTS for the stale flag"],"exampleFix":"# before\nmvn -Dmaven.resolver.transport=apache-http install\n\n# after\nmvn -Dmaven.resolver.transport=apache install","handlingStrategy":"type-guard","validationCode":null,"typeGuard":"static boolean isSupportedTransport(String t) {\n    return t == null\n        || Set.of(\"wagon\", \"apache\", \"jdk\", \"auto\", \"native\", \"default\").contains(t);\n}","tryCatchPattern":null,"preventionTips":["Whitelist the property value in wrapper scripts before launching Maven","Document the four canonical names (wagon, apache, jdk, auto) wherever the flag is configured","Audit .mvn/maven.config and CI templates when upgrading Maven majors"],"tags":["maven","resolver","transport","configuration","maven-opts"],"backgroundTag":"invalid-configuration-value","analyzedSha":"e4093d4e120eac99d6bdce5ba67cace2f3085c97","analyzedAt":"2026-08-21T22:58:24.034Z","schemaVersion":2},"datasetVersion":"2026-08-21T23:17:16.201Z"}