Commit 01d2af50 authored by dsq's avatar dsq

新的脚本文件

parent 5bb8e8ac
...@@ -650,7 +650,7 @@ code + .copy-button { ...@@ -650,7 +650,7 @@ code + .copy-button {
<script type="text/javascript"> <script type="text/javascript">
function configurationCacheProblems() { return ( function configurationCacheProblems() { return (
// begin-report-data // begin-report-data
{"diagnostics":[{"locations":[{},{"pluginId":"com.android.internal.library"}],"problem":[{"text":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"Starting with Gradle 9.0, this property will be ignored by Gradle."}],"contextualLabel":"Declaring an 'is-' property with a Boolean type has been deprecated.","documentationLink":"https://docs.gradle.org/8.14.3/userguide/upgrading_version_8.html#groovy_boolean_properties","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"declaring-an-is-property-with-a-boolean-type","displayName":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"solutions":[[{"text":"Add a method named 'getCrunchPngs' with the same behavior and mark the old one with @Deprecated, or change the type of 'com.android.build.gradle.internal.dsl.BuildType$AgpDecorated.isCrunchPngs' (and the setter) to 'boolean'."}],[{"text":"The combination of method name and return type is not consistent with Java Bean property rules and will become unsupported in future versions of Groovy."}]]},{"locations":[{},{"pluginId":"com.android.internal.library"}],"problem":[{"text":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"Starting with Gradle 9.0, this property will be ignored by Gradle."}],"contextualLabel":"Declaring an 'is-' property with a Boolean type has been deprecated.","documentationLink":"https://docs.gradle.org/8.14.3/userguide/upgrading_version_8.html#groovy_boolean_properties","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"declaring-an-is-property-with-a-boolean-type","displayName":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"solutions":[[{"text":"Add a method named 'getUseProguard' with the same behavior and mark the old one with @Deprecated, or change the type of 'com.android.build.gradle.internal.dsl.BuildType.isUseProguard' (and the setter) to 'boolean'."}],[{"text":"The combination of method name and return type is not consistent with Java Bean property rules and will become unsupported in future versions of Groovy."}]]},{"locations":[{},{"pluginId":"com.android.internal.library"}],"problem":[{"text":"The StartParameter.isConfigurationCacheRequested property has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"The StartParameter.isConfigurationCacheRequested property has been deprecated.","documentationLink":"https://docs.gradle.org/8.14.3/userguide/upgrading_version_8.html#deprecated_startparameter_is_configuration_cache_requested","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"the-startparameter-isconfigurationcacherequested-property-has-been-deprecated","displayName":"The StartParameter.isConfigurationCacheRequested property has been deprecated."}],"solutions":[[{"text":"Please use 'configurationCache.requested' property on 'BuildFeatures' service instead."}]]}],"problemsReport":{"totalProblemCount":3,"buildName":"NoComposeDemo","requestedTasks":":shared:publishDebugBinariesToHarmonyApp","documentationLink":"https://docs.gradle.org/8.14.3/userguide/reporting_problems.html","documentationLinkCaption":"Problem report","summaries":[]}} {"diagnostics":[{"problem":[{"text":"Selection failed"}],"severity":"ERROR","contextualLabel":"Cannot locate tasks that match ':composeApp:publishReleaseBinariesToHarmonyApp' as project 'composeApp' not found in root project 'NoComposeDemo'.","error":{"parts":[{"text":"org.gradle.execution.ProjectSelectionException: Cannot locate tasks that match ':composeApp:publishReleaseBinariesToHarmonyApp' as project 'composeApp' not found in root project 'NoComposeDemo'.\n"},{"internalText":"\tat org.gradle.execution.selection.DefaultBuildTaskSelector.selectProject(DefaultBuildTaskSelector.java:179)\n\tat org.gradle.execution.selection.DefaultBuildTaskSelector.resolveProject(DefaultBuildTaskSelector.java:136)\n\tat org.gradle.execution.selection.DefaultBuildTaskSelector.resolveTaskName(DefaultBuildTaskSelector.java:108)\n\tat org.gradle.execution.commandline.CommandLineTaskParser.parseTasks(CommandLineTaskParser.java:49)\n\tat org.gradle.execution.TaskNameResolvingBuildTaskScheduler.scheduleRequestedTasks(TaskNameResolvingBuildTaskScheduler.java:58)\n\tat org.gradle.execution.DefaultTasksBuildTaskScheduler.scheduleRequestedTasks(DefaultTasksBuildTaskScheduler.java:72)\n\tat org.gradle.initialization.DefaultTaskExecutionPreparer.lambda$scheduleRequestedTasks$0(DefaultTaskExecutionPreparer.java:48)\n\tat org.gradle.internal.Factories$1.create(Factories.java:31)\n\tat org.gradle.internal.work.DefaultWorkerLeaseService.withReplacedLocks(DefaultWorkerLeaseService.java:359)\n\tat org.gradle.api.internal.project.DefaultProjectStateRegistry$DefaultBuildProjectRegistry.withMutableStateOfAllProjects(DefaultProjectStateRegistry.java:239)\n\tat org.gradle.api.internal.project.DefaultProjectStateRegistry$DefaultBuildProjectRegistry.withMutableStateOfAllProjects(DefaultProjectStateRegistry.java:232)\n\tat org.gradle.initialization.DefaultTaskExecutionPreparer.scheduleRequestedTasks(DefaultTaskExecutionPreparer.java:47)\n\tat org.gradle.initialization.VintageBuildModelController.lambda$scheduleRequestedTasks$0(VintageBuildModelController.java:76)\n\tat org.gradle.internal.model.StateTransitionController.lambda$inState$1(StateTransitionController.java:99)\n\tat org.gradle.internal.model.StateTransitionController.lambda$inState$2(StateTransitionController.java:114)\n\tat org.gradle.internal.work.DefaultSynchronizer.withLock(DefaultSynchronizer.java:46)\n\tat org.gradle.internal.model.StateTransitionController.inState(StateTransitionController.java:110)\n\tat org.gradle.internal.model.StateTransitionController.inState(StateTransitionController.java:98)\n\tat org.gradle.initialization.VintageBuildModelController.scheduleRequestedTasks(VintageBuildModelController.java:76)\n\tat org.gradle.internal.cc.impl.ConfigurationCacheAwareBuildModelController.scheduleRequestedTasks(ConfigurationCacheAwareBuildModelController.kt:55)\n\tat org.gradle.internal.build.DefaultBuildLifecycleController$DefaultWorkGraphBuilder.addRequestedTasks(DefaultBuildLifecycleController.java:404)\n\tat org.gradle.internal.buildtree.DefaultBuildTreeWorkPreparer.lambda$scheduleRequestedTasks$0(DefaultBuildTreeWorkPreparer.java:41)\n\tat org.gradle.internal.build.DefaultBuildLifecycleController.lambda$populateWorkGraph$7(DefaultBuildLifecycleController.java:189)\n\tat org.gradle.internal.build.DefaultBuildWorkPreparer.populateWorkGraph(DefaultBuildWorkPreparer.java:42)\n\tat org.gradle.internal.build.BuildOperationFiringBuildWorkPreparer$PopulateWorkGraph.populateTaskGraph(BuildOperationFiringBuildWorkPreparer.java:106)\n\tat org.gradle.internal.build.BuildOperationFiringBuildWorkPreparer$PopulateWorkGraph.run(BuildOperationFiringBuildWorkPreparer.java:92)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:30)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:27)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:67)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:60)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:167)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:60)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:48)\n\tat org.gradle.internal.build.BuildOperationFiringBuildWorkPreparer.populateWorkGraph(BuildOperationFiringBuildWorkPreparer.java:67)\n\tat org.gradle.internal.build.DefaultBuildLifecycleController.lambda$populateWorkGraph$8(DefaultBuildLifecycleController.java:189)\n\tat org.gradle.internal.model.StateTransitionController.lambda$inState$1(StateTransitionController.java:99)\n\tat org.gradle.internal.model.StateTransitionController.lambda$inState$2(StateTransitionController.java:114)\n\tat org.gradle.internal.work.DefaultSynchronizer.withLock(DefaultSynchronizer.java:46)\n\tat org.gradle.internal.model.StateTransitionController.inState(StateTransitionController.java:110)\n\tat org.gradle.internal.model.StateTransitionController.inState(StateTransitionController.java:98)\n\tat org.gradle.internal.build.DefaultBuildLifecycleController.populateWorkGraph(DefaultBuildLifecycleController.java:189)\n\tat org.gradle.internal.build.DefaultBuildWorkGraphController$DefaultBuildWorkGraph.populateWorkGraph(DefaultBuildWorkGraphController.java:169)\n\tat org.gradle.composite.internal.DefaultBuildController.populateWorkGraph(DefaultBuildController.java:76)\n\tat org.gradle.composite.internal.DefaultIncludedBuildTaskGraph$DefaultBuildTreeWorkGraphBuilder.withWorkGraph(DefaultIncludedBuildTaskGraph.java:153)\n\tat org.gradle.internal.buildtree.DefaultBuildTreeWorkPreparer.lambda$scheduleRequestedTasks$1(DefaultBuildTreeWorkPreparer.java:41)\n\tat org.gradle.composite.internal.DefaultIncludedBuildTaskGraph$DefaultBuildTreeWorkGraph$1.run(DefaultIncludedBuildTaskGraph.java:209)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:30)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:27)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:67)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:60)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:167)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:60)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:48)\n\tat org.gradle.composite.internal.DefaultIncludedBuildTaskGraph$DefaultBuildTreeWorkGraph.scheduleWork(DefaultIncludedBuildTaskGraph.java:204)\n\tat org.gradle.internal.buildtree.DefaultBuildTreeWorkPreparer.scheduleRequestedTasks(DefaultBuildTreeWorkPreparer.java:37)\n\tat org.gradle.internal.cc.impl.ConfigurationCacheAwareBuildTreeWorkController$scheduleAndRunRequestedTasks$executionResult$1$result$1.invoke(ConfigurationCacheAwareBuildTreeWorkController.kt:48)\n\tat org.gradle.internal.cc.impl.ConfigurationCacheAwareBuildTreeWorkController$scheduleAndRunRequestedTasks$executionResult$1$result$1.invoke(ConfigurationCacheAwareBuildTreeWorkController.kt:45)\n\tat org.gradle.internal.cc.impl.DefaultConfigurationCache$loadOrScheduleRequestedTasks$1.invoke(DefaultConfigurationCache.kt:241)\n\tat org.gradle.internal.cc.impl.DefaultConfigurationCache$loadOrScheduleRequestedTasks$1.invoke(DefaultConfigurationCache.kt:240)\n\tat org.gradle.internal.cc.impl.DefaultConfigurationCache.runWorkThatContributesToCacheEntry(DefaultConfigurationCache.kt:552)\n\tat org.gradle.internal.cc.impl.DefaultConfigurationCache.loadOrScheduleRequestedTasks(DefaultConfigurationCache.kt:240)\n\tat org.gradle.internal.cc.impl.ConfigurationCacheAwareBuildTreeWorkController$scheduleAndRunRequestedTasks$executionResult$1.apply(ConfigurationCacheAwareBuildTreeWorkController.kt:45)\n\tat org.gradle.internal.cc.impl.ConfigurationCacheAwareBuildTreeWorkController$scheduleAndRunRequestedTasks$executionResult$1.apply(ConfigurationCacheAwareBuildTreeWorkController.kt:44)\n\tat org.gradle.composite.internal.DefaultIncludedBuildTaskGraph.withNewWorkGraph(DefaultIncludedBuildTaskGraph.java:112)\n\tat org.gradle.internal.cc.impl.ConfigurationCacheAwareBuildTreeWorkController.scheduleAndRunRequestedTasks(ConfigurationCacheAwareBuildTreeWorkController.kt:44)\n\tat org.gradle.internal.buildtree.DefaultBuildTreeLifecycleController.lambda$scheduleAndRunTasks$1(DefaultBuildTreeLifecycleController.java:77)\n\tat org.gradle.internal.buildtree.DefaultBuildTreeLifecycleController.lambda$runBuild$4(DefaultBuildTreeLifecycleController.java:120)\n\tat org.gradle.internal.model.StateTransitionController.lambda$transition$6(StateTransitionController.java:169)\n\tat org.gradle.internal.model.StateTransitionController.doTransition(StateTransitionController.java:266)\n\tat org.gradle.internal.model.StateTransitionController.lambda$transition$7(StateTransitionController.java:169)\n\tat org.gradle.internal.work.DefaultSynchronizer.withLock(DefaultSynchronizer.java:46)\n\tat org.gradle.internal.model.StateTransitionController.transition(StateTransitionController.java:169)\n\tat org.gradle.internal.buildtree.DefaultBuildTreeLifecycleController.runBuild(DefaultBuildTreeLifecycleController.java:117)\n\tat org.gradle.internal.buildtree.DefaultBuildTreeLifecycleController.scheduleAndRunTasks(DefaultBuildTreeLifecycleController.java:77)\n\tat org.gradle.internal.buildtree.DefaultBuildTreeLifecycleController.scheduleAndRunTasks(DefaultBuildTreeLifecycleController.java:72)\n\tat org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:31)\n\tat org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)\n\tat org.gradle.internal.buildtree.ProblemReportingBuildActionRunner.run(ProblemReportingBuildActionRunner.java:49)\n\tat org.gradle.launcher.exec.BuildOutcomeReportingBuildActionRunner.run(BuildOutcomeReportingBuildActionRunner.java:71)\n\tat org.gradle.tooling.internal.provider.FileSystemWatchingBuildActionRunner.run(FileSystemWatchingBuildActionRunner.java:135)\n\tat org.gradle.launcher.exec.BuildCompletionNotifyingBuildActionRunner.run(BuildCompletionNotifyingBuildActionRunner.java:41)\n\tat org.gradle.launcher.exec.RootBuildLifecycleBuildActionExecutor.lambda$execute$0(RootBuildLifecycleBuildActionExecutor.java:54)\n\tat org.gradle.composite.internal.DefaultRootBuildState.run(DefaultRootBuildState.java:130)\n\tat org.gradle.launcher.exec.RootBuildLifecycleBuildActionExecutor.execute(RootBuildLifecycleBuildActionExecutor.java:54)\n\tat org.gradle.internal.buildtree.InitDeprecationLoggingActionExecutor.execute(InitDeprecationLoggingActionExecutor.java:62)\n\tat org.gradle.internal.buildtree.InitProblems.execute(InitProblems.java:36)\n\tat org.gradle.internal.buildtree.DefaultBuildTreeContext.execute(DefaultBuildTreeContext.java:40)\n\tat org.gradle.launcher.exec.BuildTreeLifecycleBuildActionExecutor.lambda$execute$0(BuildTreeLifecycleBuildActionExecutor.java:71)\n\tat org.gradle.internal.buildtree.BuildTreeState.run(BuildTreeState.java:60)\n\tat org.gradle.launcher.exec.BuildTreeLifecycleBuildActionExecutor.execute(BuildTreeLifecycleBuildActionExecutor.java:71)\n\tat org.gradle.launcher.exec.RunAsBuildOperationBuildActionExecutor$2.call(RunAsBuildOperationBuildActionExecutor.java:67)\n\tat org.gradle.launcher.exec.RunAsBuildOperationBuildActionExecutor$2.call(RunAsBuildOperationBuildActionExecutor.java:63)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:210)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:205)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:67)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:60)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:167)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:60)\n\tat org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:54)\n\tat org.gradle.launcher.exec.RunAsBuildOperationBuildActionExecutor.execute(RunAsBuildOperationBuildActionExecutor.java:63)\n\tat org.gradle.launcher.exec.RunAsWorkerThreadBuildActionExecutor.lambda$execute$0(RunAsWorkerThreadBuildActionExecutor.java:36)\n\tat org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:263)\n\tat org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:127)\n\tat org.gradle.launcher.exec.RunAsWorkerThreadBuildActionExecutor.execute(RunAsWorkerThreadBuildActionExecutor.java:36)\n\tat org.gradle.tooling.internal.provider.continuous.ContinuousBuildActionExecutor.execute(ContinuousBuildActionExecutor.java:110)\n\tat org.gradle.tooling.internal.provider.SubscribableBuildActionExecutor.execute(SubscribableBuildActionExecutor.java:64)\n\tat org.gradle.internal.session.DefaultBuildSessionContext.execute(DefaultBuildSessionContext.java:46)\n\tat org.gradle.internal.buildprocess.execution.BuildSessionLifecycleBuildActionExecutor$ActionImpl.apply(BuildSessionLifecycleBuildActionExecutor.java:92)\n\tat org.gradle.internal.buildprocess.execution.BuildSessionLifecycleBuildActionExecutor$ActionImpl.apply(BuildSessionLifecycleBuildActionExecutor.java:80)\n\tat org.gradle.internal.session.BuildSessionState.run(BuildSessionState.java:73)\n\tat org.gradle.internal.buildprocess.execution.BuildSessionLifecycleBuildActionExecutor.execute(BuildSessionLifecycleBuildActionExecutor.java:62)\n\tat org.gradle.internal.buildprocess.execution.BuildSessionLifecycleBuildActionExecutor.execute(BuildSessionLifecycleBuildActionExecutor.java:41)\n\tat org.gradle.internal.buildprocess.execution.StartParamsValidatingActionExecutor.execute(StartParamsValidatingActionExecutor.java:64)\n\tat org.gradle.internal.buildprocess.execution.StartParamsValidatingActionExecutor.execute(StartParamsValidatingActionExecutor.java:32)\n\tat org.gradle.internal.buildprocess.execution.SessionFailureReportingActionExecutor.execute(SessionFailureReportingActionExecutor.java:51)\n\tat org.gradle.internal.buildprocess.execution.SessionFailureReportingActionExecutor.execute(SessionFailureReportingActionExecutor.java:39)\n\tat org.gradle.internal.buildprocess.execution.SetupLoggingActionExecutor.execute(SetupLoggingActionExecutor.java:47)\n\tat org.gradle.internal.buildprocess.execution.SetupLoggingActionExecutor.execute(SetupLoggingActionExecutor.java:31)\n\tat org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:70)\n\tat org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:37)\n\tat org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)\n\tat org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:39)\n\tat org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)\n\tat org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:29)\n\tat org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)\n\tat org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:35)\n\tat org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)\n\tat org.gradle.launcher.daemon.server.exec.ForwardClientInput.lambda$execute$0(ForwardClientInput.java:40)\n\tat org.gradle.internal.daemon.clientinput.ClientInputForwarder.forwardInput(ClientInputForwarder.java:80)\n\tat org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:37)\n\tat org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)\n\tat org.gradle.launcher.daemon.server.exec.LogAndCheckHealth.execute(LogAndCheckHealth.java:64)\n\tat org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)\n\tat org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:63)\n\tat org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:37)\n\tat org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)\n\tat org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:84)\n\tat org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:37)\n\tat org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)\n\tat org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:52)\n\tat org.gradle.launcher.daemon.server.DaemonStateCoordinator.lambda$runCommand$0(DaemonStateCoordinator.java:321)\n\tat org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)\n\tat org.gradle.internal.concurrent.AbstractManagedExecutor$1.run(AbstractManagedExecutor.java:48)\n"}]},"problemId":[{"name":"task-selection","displayName":"Task selection"},{"name":"selection-failed","displayName":"Selection failed"}]}],"problemsReport":{"totalProblemCount":1,"buildName":"NoComposeDemo","requestedTasks":":composeApp:publishReleaseBinariesToHarmonyApp","documentationLink":"https://docs.gradle.org/8.14.3/userguide/reporting_problems.html","documentationLinkCaption":"Problem report","summaries":[]}}
// end-report-data // end-report-data
);} );}
</script> </script>
......
{ {
"app": { "app": {
"products": [ "products": [
{ {
"name": "default", "name": "default",
...@@ -19,11 +18,26 @@ ...@@ -19,11 +18,26 @@
], ],
"buildModeSet": [ "buildModeSet": [
{ {
"name": "debug", "name": "debug"
}, },
{ {
"name": "release" "name": "release"
} }
],
"signingConfigs": [
{
"name": "default",
"type": "HarmonyOS",
"material": {
"certpath": "/Users/dongsq/.ohos/config/default_harmonyApp_2W8fuyi6g1qRq9PEULU0L1ihZD6WLc_vaAVe6obCWU0=.cer",
"keyAlias": "debugKey",
"keyPassword": "0000001ABC534084E56D0C93F49691DCC3B4678F0A3D5947317EC343DBE6C89301AB069C05F873CBAB12",
"profile": "/Users/dongsq/.ohos/config/default_harmonyApp_2W8fuyi6g1qRq9PEULU0L1ihZD6WLc_vaAVe6obCWU0=.p7b",
"signAlg": "SHA256withECDSA",
"storeFile": "/Users/dongsq/.ohos/config/default_harmonyApp_2W8fuyi6g1qRq9PEULU0L1ihZD6WLc_vaAVe6obCWU0=.p12",
"storePassword": "0000001AE20676C751F896EEA7241CCC2C60733BB7D106B4AEBAC44032A4E78E4D69388960FA17432B57"
}
}
] ]
}, },
"modules": [ "modules": [
......
...@@ -39,7 +39,7 @@ usage() { ...@@ -39,7 +39,7 @@ usage() {
echo " -m MODE Build mode: debug or release (default: debug)" echo " -m MODE Build mode: debug or release (default: debug)"
echo " -b BUNDLE Set bundle name (current: $DEFAULT_BUNDLE_NAME)" echo " -b BUNDLE Set bundle name (current: $DEFAULT_BUNDLE_NAME)"
echo " -a ABILITY Set Ability name (current: $DEFAULT_ABILITY_NAME)" echo " -a ABILITY Set Ability name (current: $DEFAULT_ABILITY_NAME)"
echo " -d Enable debug mode (aa start with -D flag)" echo " -d MODE Debug mode: debug or attach (default: attach)"
echo " -p PATH Set external OHOS project path (localOhosPath)" echo " -p PATH Set external OHOS project path (localOhosPath)"
echo " -h Show this help message" echo " -h Show this help message"
echo "" echo ""
...@@ -55,7 +55,7 @@ usage() { ...@@ -55,7 +55,7 @@ usage() {
BUNDLE_NAME=$DEFAULT_BUNDLE_NAME BUNDLE_NAME=$DEFAULT_BUNDLE_NAME
ABILITY_NAME=$DEFAULT_ABILITY_NAME ABILITY_NAME=$DEFAULT_ABILITY_NAME
BUILD_MODE="debug" BUILD_MODE="debug"
DEBUG_MODE=false DEBUG_MODE="attach"
RED='\033[0;31m' RED='\033[0;31m'
GREEN='\033[0;32m' GREEN='\033[0;32m'
NC='\033[0m' # No Color NC='\033[0m' # No Color
...@@ -66,7 +66,7 @@ while [[ $# -gt 0 ]]; do ...@@ -66,7 +66,7 @@ while [[ $# -gt 0 ]]; do
-m) BUILD_MODE="$2"; shift 2 ;; -m) BUILD_MODE="$2"; shift 2 ;;
-b) BUNDLE_NAME="$2"; shift 2 ;; -b) BUNDLE_NAME="$2"; shift 2 ;;
-a) ABILITY_NAME="$2"; shift 2 ;; -a) ABILITY_NAME="$2"; shift 2 ;;
-d) DEBUG_MODE=true; shift ;; -d) DEBUG_MODE="$2"; shift 2 ;;
-p) LOCAL_OHOS_PATH="$2"; shift 2 ;; -p) LOCAL_OHOS_PATH="$2"; shift 2 ;;
-h) usage ;; -h) usage ;;
-*) -*)
...@@ -87,7 +87,7 @@ echo -e "\033[32m▶ Run environment configuration:\033[0m" ...@@ -87,7 +87,7 @@ echo -e "\033[32m▶ Run environment configuration:\033[0m"
echo " - Platform: $PLATFORM" echo " - Platform: $PLATFORM"
echo " - Device: $TARGET_ID" echo " - Device: $TARGET_ID"
echo " - Build mode: $BUILD_MODE" echo " - Build mode: $BUILD_MODE"
echo " - Debug mode (-D): $DEBUG_MODE" echo " - Debug mode: $DEBUG_MODE"
echo " - Bundle: $BUNDLE_NAME" echo " - Bundle: $BUNDLE_NAME"
echo " - Ability: $ABILITY_NAME" echo " - Ability: $ABILITY_NAME"
if [ -n "$LOCAL_OHOS_PATH" ]; then if [ -n "$LOCAL_OHOS_PATH" ]; then
...@@ -146,18 +146,18 @@ if [ "$PLATFORM" = "ohosArm64" ]; then ...@@ -146,18 +146,18 @@ if [ "$PLATFORM" = "ohosArm64" ]; then
if [ "$BUILD_MODE" = "release" ]; then if [ "$BUILD_MODE" = "release" ]; then
if [ -n "$LOCAL_OHOS_PATH" ]; then if [ -n "$LOCAL_OHOS_PATH" ]; then
echo "Using external OHOS path: $LOCAL_OHOS_PATH" echo "Using external OHOS path: $LOCAL_OHOS_PATH"
./gradlew :composeApp:publishReleaseBinariesToHarmonyApp -PharmonyAppPath="$LOCAL_OHOS_PATH" --refresh-dependencies ./gradlew :composeApp:publishReleaseBinariesToHarmonyApp -PharmonyAppPath="$LOCAL_OHOS_PATH"
else else
echo "/gradlew :composeApp:publishReleaseBinariesToHarmonyApp" echo "/gradlew :composeApp:publishReleaseBinariesToHarmonyApp"
./gradlew :composeApp:publishReleaseBinariesToHarmonyApp --refresh-dependencies ./gradlew :composeApp:publishReleaseBinariesToHarmonyApp
fi fi
else else
if [ -n "$LOCAL_OHOS_PATH" ]; then if [ -n "$LOCAL_OHOS_PATH" ]; then
echo "Using external OHOS path: $LOCAL_OHOS_PATH" echo "Using external OHOS path: $LOCAL_OHOS_PATH"
./gradlew :composeApp:publishDebugBinariesToHarmonyApp -PharmonyAppPath="$LOCAL_OHOS_PATH" --refresh-dependencies ./gradlew :composeApp:publishDebugBinariesToHarmonyApp -PharmonyAppPath="$LOCAL_OHOS_PATH"
else else
echo "/gradlew :composeApp:publishDebugBinariesToHarmonyApp" echo "/gradlew :composeApp:publishDebugBinariesToHarmonyApp"
./gradlew :composeApp:publishDebugBinariesToHarmonyApp --refresh-dependencies ./gradlew :composeApp:publishDebugBinariesToHarmonyApp
fi fi
fi fi
elif [ "$PLATFORM" = "iosSimulatorArm64" ]; then elif [ "$PLATFORM" = "iosSimulatorArm64" ]; then
...@@ -188,7 +188,7 @@ echo "Running Hvigor sync and HAP packaging (buildMode=$BUILD_MODE)..." ...@@ -188,7 +188,7 @@ echo "Running Hvigor sync and HAP packaging (buildMode=$BUILD_MODE)..."
ohpm install --all ohpm install --all
node "$DEVECO_HOME/tools/hvigor/bin/hvigorw.js" --sync -p product=default -p buildMode="$BUILD_MODE" --analyze=normal --parallel --incremental --daemon node "$DEVECO_HOME/tools/hvigor/bin/hvigorw.js" --sync -p product=default -p buildMode="$BUILD_MODE" --analyze=normal --parallel --incremental --daemon
if [ "$BUILD_MODE" = "release" ]; then if [ "$BUILD_MODE" = "release" ]; then
node "$DEVECO_HOME/tools/hvigor/bin/hvigorw.js" --mode module -p module=entry -p product=default -p buildMode=release compileNative --analyze=normal --parallel --incremental --daemon node "$DEVECO_HOME/tools/hvigor/bin/hvigorw.js" --mode module -p module=entry -p product=default -p buildMode=release -p requiredDeviceType=phone assembleHap compileNative --analyze=normal --parallel --incremental --daemon
else else
node "$DEVECO_HOME/tools/hvigor/bin/hvigorw.js" --mode module -p module=entry@default -p product=default -p buildMode=debug -p requiredDeviceType=phone assembleHap --analyze=normal --parallel --incremental --daemon node "$DEVECO_HOME/tools/hvigor/bin/hvigorw.js" --mode module -p module=entry@default -p product=default -p buildMode=debug -p requiredDeviceType=phone assembleHap --analyze=normal --parallel --incremental --daemon
fi fi
...@@ -259,8 +259,8 @@ echo "" ...@@ -259,8 +259,8 @@ echo ""
# Step 1: Start app (with -D if debug mode enabled) # Step 1: Start app (with -D if debug mode enabled)
echo " -> Executing aa start (launch app)..." echo " -> Executing aa start (launch app)..."
if [ "$DEBUG_MODE" = true ]; then if [ "$DEBUG_MODE" = "debug" ]; then
echo " -> Debug mode enabled, starting with -D flag" echo " -> Debug mode, starting with -D flag"
AA_START_OUTPUT=$("$HDC_BIN" -t "$TARGET_ID" shell aa start -a "$ABILITY_NAME" -b "$BUNDLE_NAME" -D 2>&1) AA_START_OUTPUT=$("$HDC_BIN" -t "$TARGET_ID" shell aa start -a "$ABILITY_NAME" -b "$BUNDLE_NAME" -D 2>&1)
else else
echo " -> Attach mode, starting without -D flag" echo " -> Attach mode, starting without -D flag"
...@@ -356,11 +356,4 @@ MINUTES=$((ELAPSED_TIME / 60)) ...@@ -356,11 +356,4 @@ MINUTES=$((ELAPSED_TIME / 60))
SECONDS=$((ELAPSED_TIME % 60)) SECONDS=$((ELAPSED_TIME % 60))
echo -e " - Total time: ${MINUTES}m${SECONDS}s (${ELAPSED_TIME}s)" echo -e " - Total time: ${MINUTES}m${SECONDS}s (${ELAPSED_TIME}s)"
echo -e "\033[36mNote: You can now connect via LLDB to debug on the device\033[0m" echo -e "\033[36mNote: You can now connect via LLDB to debug on the device\033[0m"
echo "------------------------------------------------------------" echo "------------------------------------------------------------"
\ No newline at end of file
# ====================== 【6. Keep alive】 ======================
echo ""
echo -e "\033[32m▶ App running (click Stop button to end)...\033[0m"
echo ""
#keep thread alive ,user click Stop will close thread
while true; do sleep 86400; done
\ No newline at end of file
...@@ -12,7 +12,7 @@ set DEFAULT_ABILITY_NAME=EntryAbility ...@@ -12,7 +12,7 @@ set DEFAULT_ABILITY_NAME=EntryAbility
set BUNDLE_NAME=%DEFAULT_BUNDLE_NAME% set BUNDLE_NAME=%DEFAULT_BUNDLE_NAME%
set ABILITY_NAME=%DEFAULT_ABILITY_NAME% set ABILITY_NAME=%DEFAULT_ABILITY_NAME%
set BUILD_MODE=debug set BUILD_MODE=debug
set DEBUG_MODE=0 set DEBUG_MODE=attach
set LOCAL_OHOS_PATH= set LOCAL_OHOS_PATH=
set PLATFORM= set PLATFORM=
set TARGET_ID= set TARGET_ID=
...@@ -23,7 +23,7 @@ if "%~1"=="" goto done_parse ...@@ -23,7 +23,7 @@ if "%~1"=="" goto done_parse
if "%~1"=="-m" (set "BUILD_MODE=%~2" & shift & shift & goto parse) if "%~1"=="-m" (set "BUILD_MODE=%~2" & shift & shift & goto parse)
if "%~1"=="-b" (set "BUNDLE_NAME=%~2" & shift & shift & goto parse) if "%~1"=="-b" (set "BUNDLE_NAME=%~2" & shift & shift & goto parse)
if "%~1"=="-a" (set "ABILITY_NAME=%~2" & shift & shift & goto parse) if "%~1"=="-a" (set "ABILITY_NAME=%~2" & shift & shift & goto parse)
if "%~1"=="-d" (set "DEBUG_MODE=1" & shift & goto parse) if "%~1"=="-d" (set "DEBUG_MODE=%~2" & shift & shift & goto parse)
if "%~1"=="-p" (set "LOCAL_OHOS_PATH=%~2" & shift & shift & goto parse) if "%~1"=="-p" (set "LOCAL_OHOS_PATH=%~2" & shift & shift & goto parse)
if "%~1"=="-h" goto show_help if "%~1"=="-h" goto show_help
REM Positional: first=PLATFORM, second=TARGET_ID REM Positional: first=PLATFORM, second=TARGET_ID
...@@ -41,12 +41,13 @@ echo Run environment configuration: ...@@ -41,12 +41,13 @@ echo Run environment configuration:
echo - Platform: %PLATFORM% echo - Platform: %PLATFORM%
echo - Device: %TARGET_ID% echo - Device: %TARGET_ID%
echo - Build mode: %BUILD_MODE% echo - Build mode: %BUILD_MODE%
if "%DEBUG_MODE%"=="1" (echo - Debug mode: enabled) else (echo - Debug mode: disabled) echo - Debug mode: %DEBUG_MODE%
echo - Bundle: %BUNDLE_NAME% echo - Bundle: %BUNDLE_NAME%
echo - Ability: %ABILITY_NAME% echo - Ability: %ABILITY_NAME%
if not "%LOCAL_OHOS_PATH%"=="" echo - External OHOS path: %LOCAL_OHOS_PATH% if not "%LOCAL_OHOS_PATH%"=="" echo - External OHOS path: %LOCAL_OHOS_PATH%
echo ------------------------------------------------------------ echo ------------------------------------------------------------
REM ====================== [2. Environment Path and SDK Configuration] ======================
REM DevEco/SDK path: OHOS_SDK_HOME env or default Windows location REM DevEco/SDK path: OHOS_SDK_HOME env or default Windows location
if not "%OHOS_SDK_HOME%"=="" ( if not "%OHOS_SDK_HOME%"=="" (
set "SDK_HOME=%OHOS_SDK_HOME%" set "SDK_HOME=%OHOS_SDK_HOME%"
...@@ -60,6 +61,49 @@ if not "%OHOS_SDK_HOME%"=="" ( ...@@ -60,6 +61,49 @@ if not "%OHOS_SDK_HOME%"=="" (
exit /b 1 exit /b 1
) )
) )
echo DevEco Studio Path: %SDK_HOME%
echo Checking environment configuration...
set "MIN_VERSION=6.0.0"
set "PRODUCT_INFO=%SDK_HOME%\product-info.json"
if exist "%PRODUCT_INFO%" (
for /f "tokens=*" %%v in ('powershell -NoProfile -Command "(Get-Content '%PRODUCT_INFO%' | ConvertFrom-Json).version"') do set "CURRENT_VERSION=%%v"
) else (
echo Warning: product-info.json not found, skipping version check.
set "CURRENT_VERSION=unknown"
)
if not "%CURRENT_VERSION%"=="unknown" (
echo Current DevEco version: %CURRENT_VERSION%
echo Minimum required version: %MIN_VERSION%
for /f "tokens=1,2 delims=." %%a in ("%CURRENT_VERSION%") do (
set "CUR_MAJOR=%%a"
set "CUR_MINOR=%%b"
)
for /f "tokens=1,2 delims=." %%a in ("%MIN_VERSION%") do (
set "REQ_MAJOR=%%a"
set "REQ_MINOR=%%b"
)
if !CUR_MAJOR! lss !REQ_MAJOR! (
echo -------------------------------------------------------
echo Error: DevEco version is too low!
echo Current version: %CURRENT_VERSION%
echo Minimum required: %MIN_VERSION%+
echo Please upgrade DevEco Studio and run this script again.
echo -------------------------------------------------------
exit /b 5
)
if !CUR_MAJOR! equ !REQ_MAJOR! if !CUR_MINOR! lss !REQ_MINOR! (
echo -------------------------------------------------------
echo Error: DevEco version is too low!
echo Current version: %CURRENT_VERSION%
echo Minimum required: %MIN_VERSION%+
echo Please upgrade DevEco Studio and run this script again.
echo -------------------------------------------------------
exit /b 5
)
echo DevEco version meets requirements (%CURRENT_VERSION%)
)
set "HDC_BIN=%SDK_HOME%\sdk\default\openharmony\toolchains\hdc.exe" set "HDC_BIN=%SDK_HOME%\sdk\default\openharmony\toolchains\hdc.exe"
set "DEVECO_SDK_HOME=%SDK_HOME%\sdk" set "DEVECO_SDK_HOME=%SDK_HOME%\sdk"
...@@ -79,30 +123,30 @@ if "%PLATFORM%"=="ohosArm64" ( ...@@ -79,30 +123,30 @@ if "%PLATFORM%"=="ohosArm64" (
REM for ohosArm64 ohos in windows x86_64 build REM for ohosArm64 ohos in windows x86_64 build
if "%BUILD_MODE%"=="release" ( if "%BUILD_MODE%"=="release" (
if not "%LOCAL_OHOS_PATH%"=="" ( if not "%LOCAL_OHOS_PATH%"=="" (
call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyApp -PharmonyAppPath="%LOCAL_OHOS_PATH%" --refresh-dependencies call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyApp -PharmonyAppPath="%LOCAL_OHOS_PATH%"
) else ( ) else (
call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyApp --refresh-dependencies call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyApp
) )
) else ( ) else (
if not "%LOCAL_OHOS_PATH%"=="" ( if not "%LOCAL_OHOS_PATH%"=="" (
call gradlew.bat :composeApp:publishDebugBinariesToHarmonyApp -PharmonyAppPath="%LOCAL_OHOS_PATH%" --refresh-dependencies call gradlew.bat :composeApp:publishDebugBinariesToHarmonyApp -PharmonyAppPath="%LOCAL_OHOS_PATH%"
) else ( ) else (
call gradlew.bat :composeApp:publishDebugBinariesToHarmonyApp --refresh-dependencies call gradlew.bat :composeApp:publishDebugBinariesToHarmonyApp
) )
) )
) else if "%PLATFORM%"=="ohosX86_64" ( ) else if "%PLATFORM%"=="ohosX86_64" (
REM for simulate ohos in windows x86_64 REM for simulate ohos in windows x86_64
if "%BUILD_MODE%"=="release" ( if "%BUILD_MODE%"=="release" (
if not "%LOCAL_OHOS_PATH%"=="" ( if not "%LOCAL_OHOS_PATH%"=="" (
call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyAppX64 -PharmonyAppPath="%LOCAL_OHOS_PATH%" --refresh-dependencies call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyAppX64 -PharmonyAppPath="%LOCAL_OHOS_PATH%"
) else ( ) else (
call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyAppX64 --refresh-dependencies call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyAppX64
) )
) else ( ) else (
if not "%LOCAL_OHOS_PATH%"=="" ( if not "%LOCAL_OHOS_PATH%"=="" (
call gradlew.bat :composeApp:publishDebugBinariesToHarmonyAppX64 -PharmonyAppPath="%LOCAL_OHOS_PATH%" --refresh-dependencies call gradlew.bat :composeApp:publishDebugBinariesToHarmonyAppX64 -PharmonyAppPath="%LOCAL_OHOS_PATH%"
) else ( ) else (
call gradlew.bat :composeApp:publishDebugBinariesToHarmonyAppX64 --refresh-dependencies call gradlew.bat :composeApp:publishDebugBinariesToHarmonyAppX64
) )
) )
) else ( ) else (
...@@ -136,7 +180,7 @@ if errorlevel 1 (echo ohpm install failed & exit /b 1) ...@@ -136,7 +180,7 @@ if errorlevel 1 (echo ohpm install failed & exit /b 1)
call node "%SDK_HOME%\tools\hvigor\bin\hvigorw.js" --sync -p product=default -p buildMode=%BUILD_MODE% --analyze=normal --parallel --incremental --daemon call node "%SDK_HOME%\tools\hvigor\bin\hvigorw.js" --sync -p product=default -p buildMode=%BUILD_MODE% --analyze=normal --parallel --incremental --daemon
if "%BUILD_MODE%"=="release" ( if "%BUILD_MODE%"=="release" (
call node "%SDK_HOME%\tools\hvigor\bin\hvigorw.js" --mode module -p module=entry -p product=default -p buildMode=release compileNative --analyze=normal --parallel --incremental --daemon call node "%SDK_HOME%\tools\hvigor\bin\hvigorw.js" --mode module -p module=entry -p product=default -p buildMode=release -p requiredDeviceType=phone assembleHap compileNative --analyze=normal --parallel --incremental --daemon
) else ( ) else (
call node "%SDK_HOME%\tools\hvigor\bin\hvigorw.js" --mode module -p module=entry@default -p product=default -p buildMode=debug -p requiredDeviceType=phone assembleHap --analyze=normal --parallel --incremental --daemon call node "%SDK_HOME%\tools\hvigor\bin\hvigorw.js" --mode module -p module=entry@default -p product=default -p buildMode=debug -p requiredDeviceType=phone assembleHap --analyze=normal --parallel --incremental --daemon
) )
...@@ -186,8 +230,8 @@ timeout /t 1 /nobreak >nul ...@@ -186,8 +230,8 @@ timeout /t 1 /nobreak >nul
echo Launching app and starting debug listener... echo Launching app and starting debug listener...
echo If device screen is locked, please unlock it manually. echo If device screen is locked, please unlock it manually.
echo. echo.
if "%DEBUG_MODE%"=="1" ( if "%DEBUG_MODE%"=="debug" (
echo Debug mode enabled, starting with -D flag echo Debug mode, starting with -D flag
"%HDC_BIN%" -t %TARGET_ID% shell aa start -a %ABILITY_NAME% -b %BUNDLE_NAME% -D "%HDC_BIN%" -t %TARGET_ID% shell aa start -a %ABILITY_NAME% -b %BUNDLE_NAME% -D
) else ( ) else (
echo Attach mode, starting without -D flag echo Attach mode, starting without -D flag
...@@ -237,11 +281,6 @@ set /a SECONDS=ELAPSED%%60 ...@@ -237,11 +281,6 @@ set /a SECONDS=ELAPSED%%60
echo - Total time: !MINUTES!m!SECONDS!s (!ELAPSED!s) echo - Total time: !MINUTES!m!SECONDS!s (!ELAPSED!s)
echo Note: You can now connect via LLDB to debug on the device echo Note: You can now connect via LLDB to debug on the device
echo ------------------------------------------------------------ echo ------------------------------------------------------------
echo.
echo App running (click Stop in IDE to end)...
REM Keep window alive when run from IDE; user stops from Run tool window
ping 127.0.0.1 -n 86400 >nul
goto :eof
:show_help :show_help
echo Usage: %~nx0 [options] [PLATFORM] [TARGET_ID] echo Usage: %~nx0 [options] [PLATFORM] [TARGET_ID]
...@@ -254,7 +293,7 @@ echo Options: ...@@ -254,7 +293,7 @@ echo Options:
echo -m MODE Build mode: debug or release (default: debug) echo -m MODE Build mode: debug or release (default: debug)
echo -b BUNDLE Set bundle name (current: %DEFAULT_BUNDLE_NAME%) echo -b BUNDLE Set bundle name (current: %DEFAULT_BUNDLE_NAME%)
echo -a ABILITY Set Ability name (current: %DEFAULT_ABILITY_NAME%) echo -a ABILITY Set Ability name (current: %DEFAULT_ABILITY_NAME%)
echo -d Enable debug mode (aa start with -D flag) echo -d MODE Debug mode: debug or attach (default: attach)
echo -p PATH Set external OHOS project path (localOhosPath) echo -p PATH Set external OHOS project path (localOhosPath)
echo -h Show this help echo -h Show this help
echo. echo.
......
...@@ -39,7 +39,7 @@ usage() { ...@@ -39,7 +39,7 @@ usage() {
echo " -m MODE Build mode: debug or release (default: debug)" echo " -m MODE Build mode: debug or release (default: debug)"
echo " -b BUNDLE Set bundle name (current: $DEFAULT_BUNDLE_NAME)" echo " -b BUNDLE Set bundle name (current: $DEFAULT_BUNDLE_NAME)"
echo " -a ABILITY Set Ability name (current: $DEFAULT_ABILITY_NAME)" echo " -a ABILITY Set Ability name (current: $DEFAULT_ABILITY_NAME)"
echo " -d Enable debug mode (aa start with -D flag)" echo " -d MODE Debug mode: debug or attach (default: attach)"
echo " -p PATH Set external OHOS project path (localOhosPath)" echo " -p PATH Set external OHOS project path (localOhosPath)"
echo " -h Show this help message" echo " -h Show this help message"
echo "" echo ""
...@@ -55,7 +55,7 @@ usage() { ...@@ -55,7 +55,7 @@ usage() {
BUNDLE_NAME=$DEFAULT_BUNDLE_NAME BUNDLE_NAME=$DEFAULT_BUNDLE_NAME
ABILITY_NAME=$DEFAULT_ABILITY_NAME ABILITY_NAME=$DEFAULT_ABILITY_NAME
BUILD_MODE="debug" BUILD_MODE="debug"
DEBUG_MODE=false DEBUG_MODE="attach"
RED='\033[0;31m' RED='\033[0;31m'
GREEN='\033[0;32m' GREEN='\033[0;32m'
NC='\033[0m' # No Color NC='\033[0m' # No Color
...@@ -66,7 +66,7 @@ while [[ $# -gt 0 ]]; do ...@@ -66,7 +66,7 @@ while [[ $# -gt 0 ]]; do
-m) BUILD_MODE="$2"; shift 2 ;; -m) BUILD_MODE="$2"; shift 2 ;;
-b) BUNDLE_NAME="$2"; shift 2 ;; -b) BUNDLE_NAME="$2"; shift 2 ;;
-a) ABILITY_NAME="$2"; shift 2 ;; -a) ABILITY_NAME="$2"; shift 2 ;;
-d) DEBUG_MODE=true; shift ;; -d) DEBUG_MODE="$2"; shift 2 ;;
-p) LOCAL_OHOS_PATH="$2"; shift 2 ;; -p) LOCAL_OHOS_PATH="$2"; shift 2 ;;
-h) usage ;; -h) usage ;;
-*) -*)
...@@ -87,7 +87,7 @@ echo -e "\033[32m▶ Run environment configuration:\033[0m" ...@@ -87,7 +87,7 @@ echo -e "\033[32m▶ Run environment configuration:\033[0m"
echo " - Platform: $PLATFORM" echo " - Platform: $PLATFORM"
echo " - Device: $TARGET_ID" echo " - Device: $TARGET_ID"
echo " - Build mode: $BUILD_MODE" echo " - Build mode: $BUILD_MODE"
echo " - Debug mode (-D): $DEBUG_MODE" echo " - Debug mode: $DEBUG_MODE"
echo " - Bundle: $BUNDLE_NAME" echo " - Bundle: $BUNDLE_NAME"
echo " - Ability: $ABILITY_NAME" echo " - Ability: $ABILITY_NAME"
if [ -n "$LOCAL_OHOS_PATH" ]; then if [ -n "$LOCAL_OHOS_PATH" ]; then
...@@ -148,22 +148,22 @@ if [ "$PLATFORM" = "ohosArm64" ]; then ...@@ -148,22 +148,22 @@ if [ "$PLATFORM" = "ohosArm64" ]; then
if [ -n "$LOCAL_OHOS_PATH" ]; then if [ -n "$LOCAL_OHOS_PATH" ]; then
echo "Using external OHOS path: $LOCAL_OHOS_PATH" echo "Using external OHOS path: $LOCAL_OHOS_PATH"
echo "/gradlew :shared:publishReleaseBinariesToHarmonyApp" echo "/gradlew :shared:publishReleaseBinariesToHarmonyApp"
./gradlew :shared:publishReleaseBinariesToHarmonyApp -PharmonyAppPath="$LOCAL_OHOS_PATH" --refresh-dependencies ./gradlew :shared:publishReleaseBinariesToHarmonyApp -PharmonyAppPath="$LOCAL_OHOS_PATH"
else else
echo "/gradlew :shared:publishReleaseBinariesToHarmonyApp" echo "/gradlew :shared:publishReleaseBinariesToHarmonyApp"
./gradlew :shared:publishReleaseBinariesToHarmonyApp --refresh-dependencies ./gradlew :shared:publishReleaseBinariesToHarmonyApp
fi fi
else else
if [ -n "$LOCAL_OHOS_PATH" ]; then if [ -n "$LOCAL_OHOS_PATH" ]; then
echo "Using external OHOS path: $LOCAL_OHOS_PATH" echo "Using external OHOS path: $LOCAL_OHOS_PATH"
./gradlew :shared:publishDebugBinariesToHarmonyApp -PharmonyAppPath="$LOCAL_OHOS_PATH" --refresh-dependencies ./gradlew :shared:publishDebugBinariesToHarmonyApp -PharmonyAppPath="$LOCAL_OHOS_PATH"
else else
echo "/gradlew :shared:publishDebugBinariesToHarmonyApp" echo "/gradlew :shared:publishDebugBinariesToHarmonyApp"
./gradlew :shared:publishDebugBinariesToHarmonyApp --refresh-dependencies ./gradlew :shared:publishDebugBinariesToHarmonyApp
fi fi
fi fi
elif [ "$PLATFORM" = "iosSimulatorArm64" ]; then elif [ "$PLATFORM" = "iosSimulatorArm64" ]; then
./gradlew :shared:linkDebugFrameworkIosSimulatorArm64 --refresh-dependencies ./gradlew :shared:linkDebugFrameworkIosSimulatorArm64
else else
echo -e "\033[31mError: Unsupported platform '$PLATFORM'\033[0m" echo -e "\033[31mError: Unsupported platform '$PLATFORM'\033[0m"
exit 4 exit 4
...@@ -190,7 +190,7 @@ echo "Running Hvigor sync and HAP packaging (buildMode=$BUILD_MODE)..." ...@@ -190,7 +190,7 @@ echo "Running Hvigor sync and HAP packaging (buildMode=$BUILD_MODE)..."
ohpm install --all ohpm install --all
node "$DEVECO_HOME/tools/hvigor/bin/hvigorw.js" --sync -p product=default -p buildMode="$BUILD_MODE" --analyze=normal --parallel --incremental --daemon node "$DEVECO_HOME/tools/hvigor/bin/hvigorw.js" --sync -p product=default -p buildMode="$BUILD_MODE" --analyze=normal --parallel --incremental --daemon
if [ "$BUILD_MODE" = "release" ]; then if [ "$BUILD_MODE" = "release" ]; then
node "$DEVECO_HOME/tools/hvigor/bin/hvigorw.js" --mode module -p module=entry -p product=default -p buildMode=release compileNative --analyze=normal --parallel --incremental --daemon node "$DEVECO_HOME/tools/hvigor/bin/hvigorw.js" --mode module -p module=entry -p product=default -p buildMode=release -p requiredDeviceType=phone assembleHap compileNative --analyze=normal --parallel --incremental --daemon
else else
node "$DEVECO_HOME/tools/hvigor/bin/hvigorw.js" --mode module -p module=entry@default -p product=default -p buildMode=debug -p requiredDeviceType=phone assembleHap --analyze=normal --parallel --incremental --daemon node "$DEVECO_HOME/tools/hvigor/bin/hvigorw.js" --mode module -p module=entry@default -p product=default -p buildMode=debug -p requiredDeviceType=phone assembleHap --analyze=normal --parallel --incremental --daemon
fi fi
...@@ -261,8 +261,8 @@ echo "" ...@@ -261,8 +261,8 @@ echo ""
# Step 1: Start app (with -D if debug mode enabled) # Step 1: Start app (with -D if debug mode enabled)
echo " -> Executing aa start (launch app)..." echo " -> Executing aa start (launch app)..."
if [ "$DEBUG_MODE" = true ]; then if [ "$DEBUG_MODE" = "debug" ]; then
echo " -> Debug mode enabled, starting with -D flag" echo " -> Debug mode, starting with -D flag"
AA_START_OUTPUT=$("$HDC_BIN" -t "$TARGET_ID" shell aa start -a "$ABILITY_NAME" -b "$BUNDLE_NAME" -D 2>&1) AA_START_OUTPUT=$("$HDC_BIN" -t "$TARGET_ID" shell aa start -a "$ABILITY_NAME" -b "$BUNDLE_NAME" -D 2>&1)
else else
echo " -> Attach mode, starting without -D flag" echo " -> Attach mode, starting without -D flag"
...@@ -350,10 +350,4 @@ echo -e " - HAP package and push time: ${MINUTES}m${SECONDS}s (${ELAPSED_TIME}s ...@@ -350,10 +350,4 @@ echo -e " - HAP package and push time: ${MINUTES}m${SECONDS}s (${ELAPSED_TIME}s
ELAPSED_TIME=$((END_TIME - START_TIME)) ELAPSED_TIME=$((END_TIME - START_TIME))
MINUTES=$((ELAPSED_TIME / 60)) MINUTES=$((ELAPSED_TIME / 60))
SECONDS=$((ELAPSED_TIME % 60)) SECONDS=$((ELAPSED_TIME % 60))
echo -e " - Total time: ${MINUTES}m${SECONDS}s (${ELAPSED_TIME}s)" echo -e " - Total time: ${MINUTES}m${SECONDS}s (${ELAPSED_TIME}s)"
# ====================== 【6. Keep alive】 ====================== \ No newline at end of file
echo ""
echo -e "\033[32m▶ App running (click Stop button to end)...\033[0m"
echo ""
#keep thread alive ,user click Stop will close thread
while true; do sleep 86400; done
\ No newline at end of file
...@@ -12,7 +12,7 @@ set DEFAULT_ABILITY_NAME=EntryAbility ...@@ -12,7 +12,7 @@ set DEFAULT_ABILITY_NAME=EntryAbility
set BUNDLE_NAME=%DEFAULT_BUNDLE_NAME% set BUNDLE_NAME=%DEFAULT_BUNDLE_NAME%
set ABILITY_NAME=%DEFAULT_ABILITY_NAME% set ABILITY_NAME=%DEFAULT_ABILITY_NAME%
set BUILD_MODE=debug set BUILD_MODE=debug
set DEBUG_MODE=0 set DEBUG_MODE=attach
set LOCAL_OHOS_PATH= set LOCAL_OHOS_PATH=
set PLATFORM= set PLATFORM=
set TARGET_ID= set TARGET_ID=
...@@ -23,7 +23,7 @@ if "%~1"=="" goto done_parse ...@@ -23,7 +23,7 @@ if "%~1"=="" goto done_parse
if "%~1"=="-m" (set "BUILD_MODE=%~2" & shift & shift & goto parse) if "%~1"=="-m" (set "BUILD_MODE=%~2" & shift & shift & goto parse)
if "%~1"=="-b" (set "BUNDLE_NAME=%~2" & shift & shift & goto parse) if "%~1"=="-b" (set "BUNDLE_NAME=%~2" & shift & shift & goto parse)
if "%~1"=="-a" (set "ABILITY_NAME=%~2" & shift & shift & goto parse) if "%~1"=="-a" (set "ABILITY_NAME=%~2" & shift & shift & goto parse)
if "%~1"=="-d" (set "DEBUG_MODE=1" & shift & goto parse) if "%~1"=="-d" (set "DEBUG_MODE=%~2" & shift & shift & goto parse)
if "%~1"=="-p" (set "LOCAL_OHOS_PATH=%~2" & shift & shift & goto parse) if "%~1"=="-p" (set "LOCAL_OHOS_PATH=%~2" & shift & shift & goto parse)
if "%~1"=="-h" goto show_help if "%~1"=="-h" goto show_help
REM Positional: first=PLATFORM, second=TARGET_ID REM Positional: first=PLATFORM, second=TARGET_ID
...@@ -41,29 +41,71 @@ echo Run environment configuration: ...@@ -41,29 +41,71 @@ echo Run environment configuration:
echo - Platform: %PLATFORM% echo - Platform: %PLATFORM%
echo - Device: %TARGET_ID% echo - Device: %TARGET_ID%
echo - Build mode: %BUILD_MODE% echo - Build mode: %BUILD_MODE%
if "%DEBUG_MODE%"=="1" (echo - Debug mode: enabled) else (echo - Debug mode: disabled) echo - Debug mode: %DEBUG_MODE%
echo - Bundle: %BUNDLE_NAME% echo - Bundle: %BUNDLE_NAME%
echo - Ability: %ABILITY_NAME% echo - Ability: %ABILITY_NAME%
if not "%LOCAL_OHOS_PATH%"=="" echo - External OHOS path: %LOCAL_OHOS_PATH% if not "%LOCAL_OHOS_PATH%"=="" echo - External OHOS path: %LOCAL_OHOS_PATH%
echo ------------------------------------------------------------ echo ------------------------------------------------------------
REM ====================== [2. Environment Path and SDK Configuration] ======================
REM DevEco/SDK path: OHOS_SDK_HOME env or default Windows location REM DevEco/SDK path: OHOS_SDK_HOME env or default Windows location
if not "%OHOS_SDK_HOME%"=="" ( if "%DEVECO_PATH%"=="" (
set "SDK_HOME=%OHOS_SDK_HOME%"
) else (
if exist "C:\Program Files\Huawei\DevEco Studio" ( if exist "C:\Program Files\Huawei\DevEco Studio" (
set "SDK_HOME=C:\Program Files\Huawei\DevEco Studio" set "DEVECO_PATH=C:\Program Files\Huawei\DevEco Studio"
) else if exist "D:\Program Files\Huawei\DevEco Studio" ( ) else if exist "D:\Program Files\Huawei\DevEco Studio" (
set "SDK_HOME=D:\Program Files\Huawei\DevEco Studio" set "DEVECO_PATH=D:\Program Files\Huawei\DevEco Studio"
) else ( ) else (
echo Error: DevEco Studio not found. Set OHOS_SDK_HOME or install to default path. echo Error: DevEco Studio not found. Set OHOS_SDK_HOME or install to default path.
exit /b 1 exit /b 1
) )
) )
echo DevEco Studio Path: %DEVECO_PATH%
echo Checking environment configuration...
set "HDC_BIN=%SDK_HOME%\sdk\default\openharmony\toolchains\hdc.exe" set "MIN_VERSION=6.0.0"
set "DEVECO_SDK_HOME=%SDK_HOME%\sdk" set "PRODUCT_INFO=%DEVECO_PATH%\product-info.json"
set "PATH=%SDK_HOME%\tools\node;%SDK_HOME%\tools\ohpm\bin;%SDK_HOME%\tools\hvigor\bin;%DEVECO_SDK_HOME%;%PATH%" if exist "%PRODUCT_INFO%" (
for /f "tokens=*" %%v in ('powershell -NoProfile -Command "(Get-Content '%PRODUCT_INFO%' | ConvertFrom-Json).version"') do set "CURRENT_VERSION=%%v"
) else (
echo Warning: product-info.json not found, skipping version check.
set "CURRENT_VERSION=unknown"
)
if not "%CURRENT_VERSION%"=="unknown" (
echo Current DevEco version: %CURRENT_VERSION%
echo Minimum required version: %MIN_VERSION%
for /f "tokens=1,2 delims=." %%a in ("%CURRENT_VERSION%") do (
set "CUR_MAJOR=%%a"
set "CUR_MINOR=%%b"
)
for /f "tokens=1,2 delims=." %%a in ("%MIN_VERSION%") do (
set "REQ_MAJOR=%%a"
set "REQ_MINOR=%%b"
)
if !CUR_MAJOR! lss !REQ_MAJOR! (
echo -------------------------------------------------------
echo Error: DevEco version is too low!
echo Current version: %CURRENT_VERSION%
echo Minimum required: %MIN_VERSION%+
echo Please upgrade DevEco Studio and run this script again.
echo -------------------------------------------------------
exit /b 5
)
if !CUR_MAJOR! equ !REQ_MAJOR! if !CUR_MINOR! lss !REQ_MINOR! (
echo -------------------------------------------------------
echo Error: DevEco version is too low!
echo Current version: %CURRENT_VERSION%
echo Minimum required: %MIN_VERSION%+
echo Please upgrade DevEco Studio and run this script again.
echo -------------------------------------------------------
exit /b 5
)
echo DevEco version meets requirements (%CURRENT_VERSION%)
)
set "HDC_BIN=%DEVECO_PATH%\sdk\default\openharmony\toolchains\hdc.exe"
set "DEVECO_SDK_HOME=%DEVECO_PATH%\sdk"
set "PATH=%DEVECO_PATH%\tools\node;%DEVECO_PATH%\tools\ohpm\bin;%DEVECO_PATH%\tools\hvigor\bin;%DEVECO_SDK_HOME%;%PATH%"
if not exist "%HDC_BIN%" ( if not exist "%HDC_BIN%" (
echo Error: hdc not found at %HDC_BIN% echo Error: hdc not found at %HDC_BIN%
...@@ -79,30 +121,30 @@ if "%PLATFORM%"=="ohosArm64" ( ...@@ -79,30 +121,30 @@ if "%PLATFORM%"=="ohosArm64" (
REM for ohosArm64 ohos in windows x86_64 build REM for ohosArm64 ohos in windows x86_64 build
if "%BUILD_MODE%"=="release" ( if "%BUILD_MODE%"=="release" (
if not "%LOCAL_OHOS_PATH%"=="" ( if not "%LOCAL_OHOS_PATH%"=="" (
call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyApp -PharmonyAppPath="%LOCAL_OHOS_PATH%" --refresh-dependencies call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyApp -PharmonyAppPath="%LOCAL_OHOS_PATH%"
) else ( ) else (
call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyApp --refresh-dependencies call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyApp
) )
) else ( ) else (
if not "%LOCAL_OHOS_PATH%"=="" ( if not "%LOCAL_OHOS_PATH%"=="" (
call gradlew.bat :composeApp:publishDebugBinariesToHarmonyApp -PharmonyAppPath="%LOCAL_OHOS_PATH%" --refresh-dependencies call gradlew.bat :composeApp:publishDebugBinariesToHarmonyApp -PharmonyAppPath="%LOCAL_OHOS_PATH%"
) else ( ) else (
call gradlew.bat :composeApp:publishDebugBinariesToHarmonyApp --refresh-dependencies call gradlew.bat :composeApp:publishDebugBinariesToHarmonyApp
) )
) )
) else if "%PLATFORM%"=="ohosX86_64" ( ) else if "%PLATFORM%"=="ohosX86_64" (
REM for simulate ohos in windows x86_64 REM for simulate ohos in windows x86_64
if "%BUILD_MODE%"=="release" ( if "%BUILD_MODE%"=="release" (
if not "%LOCAL_OHOS_PATH%"=="" ( if not "%LOCAL_OHOS_PATH%"=="" (
call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyAppX64 -PharmonyAppPath="%LOCAL_OHOS_PATH%" --refresh-dependencies call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyAppX64 -PharmonyAppPath="%LOCAL_OHOS_PATH%"
) else ( ) else (
call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyAppX64 --refresh-dependencies call gradlew.bat :composeApp:publishReleaseBinariesToHarmonyAppX64
) )
) else ( ) else (
if not "%LOCAL_OHOS_PATH%"=="" ( if not "%LOCAL_OHOS_PATH%"=="" (
call gradlew.bat :composeApp:publishDebugBinariesToHarmonyAppX64 -PharmonyAppPath="%LOCAL_OHOS_PATH%" --refresh-dependencies call gradlew.bat :composeApp:publishDebugBinariesToHarmonyAppX64 -PharmonyAppPath="%LOCAL_OHOS_PATH%"
) else ( ) else (
call gradlew.bat :composeApp:publishDebugBinariesToHarmonyAppX64 --refresh-dependencies call gradlew.bat :composeApp:publishDebugBinariesToHarmonyAppX64
) )
) )
) else ( ) else (
...@@ -134,11 +176,11 @@ echo Running ohpm and Hvigor... ...@@ -134,11 +176,11 @@ echo Running ohpm and Hvigor...
call ohpm install --all call ohpm install --all
if errorlevel 1 (echo ohpm install failed & exit /b 1) if errorlevel 1 (echo ohpm install failed & exit /b 1)
call node "%SDK_HOME%\tools\hvigor\bin\hvigorw.js" --sync -p product=default -p buildMode=%BUILD_MODE% --analyze=normal --parallel --incremental --daemon call node "%DEVECO_PATH%\tools\hvigor\bin\hvigorw.js" --sync -p product=default -p buildMode=%BUILD_MODE% --analyze=normal --parallel --incremental --daemon
if "%BUILD_MODE%"=="release" ( if "%BUILD_MODE%"=="release" (
call node "%SDK_HOME%\tools\hvigor\bin\hvigorw.js" --mode module -p module=entry -p product=default -p buildMode=release compileNative --analyze=normal --parallel --incremental --daemon call node "%DEVECO_PATH%\tools\hvigor\bin\hvigorw.js" --mode module -p module=entry -p product=default -p buildMode=release -p requiredDeviceType=phone assembleHap compileNative --analyze=normal --parallel --incremental --daemon
) else ( ) else (
call node "%SDK_HOME%\tools\hvigor\bin\hvigorw.js" --mode module -p module=entry@default -p product=default -p buildMode=debug -p requiredDeviceType=phone assembleHap --analyze=normal --parallel --incremental --daemon call node "%DEVECO_PATH%\tools\hvigor\bin\hvigorw.js" --mode module -p module=entry@default -p product=default -p buildMode=debug -p requiredDeviceType=phone assembleHap --analyze=normal --parallel --incremental --daemon
) )
if errorlevel 1 (echo Hvigor build failed & exit /b 1) if errorlevel 1 (echo Hvigor build failed & exit /b 1)
...@@ -186,8 +228,8 @@ timeout /t 1 /nobreak >nul ...@@ -186,8 +228,8 @@ timeout /t 1 /nobreak >nul
echo Launching app... echo Launching app...
echo If device screen is locked, please unlock it manually. echo If device screen is locked, please unlock it manually.
echo. echo.
if "%DEBUG_MODE%"=="1" ( if "%DEBUG_MODE%"=="debug" (
echo Debug mode enabled, starting with -D flag echo Debug mode, starting with -D flag
"%HDC_BIN%" -t %TARGET_ID% shell aa start -a %ABILITY_NAME% -b %BUNDLE_NAME% -D "%HDC_BIN%" -t %TARGET_ID% shell aa start -a %ABILITY_NAME% -b %BUNDLE_NAME% -D
) else ( ) else (
echo Attach mode, starting without -D flag echo Attach mode, starting without -D flag
...@@ -231,11 +273,6 @@ set /a MINUTES=ELAPSED/60 ...@@ -231,11 +273,6 @@ set /a MINUTES=ELAPSED/60
set /a SECONDS=ELAPSED%%60 set /a SECONDS=ELAPSED%%60
echo - Total time: !MINUTES!m!SECONDS!s (!ELAPSED!s) echo - Total time: !MINUTES!m!SECONDS!s (!ELAPSED!s)
echo ------------------------------------------------------------ echo ------------------------------------------------------------
echo.
echo App running (click Stop in IDE to end)...
REM Keep window alive when run from IDE; user stops from Run tool window
ping 127.0.0.1 -n 86400 >nul
goto :eof
:show_help :show_help
echo Usage: %~nx0 [options] [PLATFORM] [TARGET_ID] echo Usage: %~nx0 [options] [PLATFORM] [TARGET_ID]
...@@ -248,7 +285,7 @@ echo Options: ...@@ -248,7 +285,7 @@ echo Options:
echo -m MODE Build mode: debug or release (default: debug) echo -m MODE Build mode: debug or release (default: debug)
echo -b BUNDLE Set bundle name (current: %DEFAULT_BUNDLE_NAME%) echo -b BUNDLE Set bundle name (current: %DEFAULT_BUNDLE_NAME%)
echo -a ABILITY Set Ability name (current: %DEFAULT_ABILITY_NAME%) echo -a ABILITY Set Ability name (current: %DEFAULT_ABILITY_NAME%)
echo -d Enable debug mode (aa start with -D flag) echo -d MODE Debug mode: debug or attach (default: attach)
echo -p PATH Set external OHOS project path (localOhosPath) echo -p PATH Set external OHOS project path (localOhosPath)
echo -h Show this help echo -h Show this help
echo. echo.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment