尝试运行命令"ionic cordova build android --prod --release“时出现以下错误
Type AcknowledgePage in C:/Projects/MobileApps/DOTPicking/src/pages/acknowledge/acknowledge.ts is part of
the declarations of 2 modules: AppModule in C:/Projects/MobileApps/DOTPicking/src/app/app.module.ts and
AcknowledgePageModule in C:/Projects/MobileApps/DOTPicking/src/pages/acknowledge/acknowledge.module.ts!
Please consider moving AcknowledgePage in
C:/Projects/MobileApps/DOTPicking/src/pages/acknowledge/acknowledge.ts to a higher module that imports
AppModule in C:/Projects/MobileApps/DOTPicking/src/app/app.module.ts and AcknowledgePageModule in
C:/Projects/MobileApps/DOTPicking/src/pages/acknowledge/acknowledge.module.ts. You can also create a new
NgModule that exports and includes AcknowledgePage in
C:/Projects/MobileApps/DOTPicking/src/pages/acknowledge/acknowledge.ts then import that NgModule in
AppModule in C:/Projects/MobileApps/DOTPicking/src/app/app.module.ts and AcknowledgePageModule in
C:/Projects/MobileApps/DOTPicking/src/pages/acknowledge/acknowledge.module.ts.我试图从声明中删除页面,但这只会导致另一个错误。有没有一种简单的方法来修复我刚才忽略的这个错误?当我删除它们时,它基本上只是告诉我将它们添加回来。
import { BrowserModule } from '@angular/platform-browser';
import { ErrorHandler, NgModule } from '@angular/core';
import { IonicApp, IonicErrorHandler, IonicModule } from 'ionic-angular';
import { Device } from '@ionic-native/device';
import { AndroidPermissions } from '@ionic-native/android-permissions';
import { HttpModule } from '@angular/http';
import { MachinePage } from '../pages/machine/machine'
import { MyApp } from './app.component';
import { LoginPage } from '../pages/login/login';
import { StatusBar } from '@ionic-native/status-bar';
import { SplashScreen } from '@ionic-native/splash-screen';
import { LoginServiceProvider } from '../providers/login-service/login-service';
import { DeviceStatusServiceProvider } from '../providers/device-status-service/device-status-service';
import { EnvironmentService } from '../environments/environment.service'
import { ModalServiceProvider } from '../providers/modal-service/modal-service';
import { MachineService } from '../providers/machine-service/machine-service';
import { ListPage } from '../pages/list/list'
import { GetworkPage } from '../pages/getwork/getwork'
import { StagingPage } from '../pages/staging/staging'
import { PickingServiceProvider } from '../providers/picking-service/picking-service';
import { WeighpalletPage } from '../pages/weighpallet/weighpallet'
import { ValidationServiceProvider } from '../providers/validation-service/validation-service';
import { AcknowledgePage } from '../pages/acknowledge/acknowledge';
import { NavigationMenuServiceProvider } from '../providers/navigation-menu-service/navigation-menu-service';
import { PickPage } from '../pages/pick/pick';
import { ScanlpPage } from '../pages/scanlp/scanlp'
import { PickServiceProvider } from '../providers/storage-service/pick-service';
import { ListServiceProvider } from '../providers/storage-service/list-service';
import { SessionServiceProvider } from '../providers/storage-service/session-service';
import { StorageHelper } from '../providers/storage-service/storage-helper';
import { ReversePipe } from '../pipes/reverse/reverse';
@NgModule({
declarations: [
MyApp,
LoginPage,
MachinePage,
ListPage,
GetworkPage,
StagingPage,
WeighpalletPage,
AcknowledgePage,
PickPage,
ScanlpPage,
ReversePipe
],
imports: [
BrowserModule,
IonicModule.forRoot(MyApp),
HttpModule
],
bootstrap: [IonicApp],
entryComponents: [
MyApp,
LoginPage,
MachinePage,
ListPage,
GetworkPage,
StagingPage,
WeighpalletPage,
AcknowledgePage,
PickPage,
ScanlpPage
],
providers: [
StatusBar,
SplashScreen,
{ provide: ErrorHandler, useClass: IonicErrorHandler },
Device,
AndroidPermissions,
LoginServiceProvider,
EnvironmentService,
ModalServiceProvider,
MachineService,
DeviceStatusServiceProvider,
SessionServiceProvider,
PickingServiceProvider,
ValidationServiceProvider,
NavigationMenuServiceProvider,
PickServiceProvider,
ListServiceProvider,
StorageHelper
]
})
export class AppModule { }发布于 2019-01-25 03:01:11
离子应用程序发布构建步骤:-
步骤1:-以管理员身份打开命令,然后运行以下命令:-
"keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000"**Step2:-**运行命令
ionic build android --release将创建"android-release-unsigned.apk“
步骤3:-上面的步骤1命令将创建"my_private_key.keystore“请确保将此文件保存在安全的地方,如果丢失,您将无法向您的应用程序提交更新!
要对未签名的APK签名,请运行jarsigner工具,该工具也包含在JDK中:
"$ jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore HelloWorld-release-unsigned.apk alias_name"步骤4:-要查找别名,请运行以下命令:-
"keytool -keystore my_private_key.keystore -list -v" at the root directory where keystore is placed.构建工具位于android-sdk/-tools/{}/文件夹中。
eg:-C:\Users\Karanvir\AppData\Local\Android\sdk1\build-tools\25.0.2>
zipalign -v 4 android-release-unsigned.apk android_release_signed.apk密钥库密码:-android@123(这里是你的密钥库密码)。
尽情享受!
https://stackoverflow.com/questions/51327476
复制相似问题