首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JHipster服务提供者错误

JHipster服务提供者错误
EN

Stack Overflow用户
提问于 2018-01-13 12:02:55
回答 1查看 489关注 0票数 0

我遇到了一个问题,可能有一个简单的解决方案,但我很遗憾地忽略了这个问题。我希望有人能帮我。

基本上,我用一个.jdl文件生成了一个新的应用程序,它完美地完成了工作。

现在我尝试使用这个简单的应用程序,但是我在点击"Add {Entity }“时出错。2实体给了我这个错误。

这些是.ts文件。

第一个是Quiz实体,它与Question有关系。

quiz.service.ts

代码语言:javascript
复制
import { Injectable } from '@angular/core';
import { Http, Response } from '@angular/http';
import { Observable } from 'rxjs/Observable';
import { SERVER_API_URL } from '../../app.constants';
import { Quiz } from './quiz.model';
import { ResponseWrapper, createRequestOption } from '../../shared';

@Injectable()
export class QuizService {...}

question.service.ts是以与quiz.service.ts相同的方式制作的

代码语言:javascript
复制
import { Injectable } from '@angular/core';
import { Http, Response } from '@angular/http';
import { Observable } from 'rxjs/Observable';
import { SERVER_API_URL } from '../../app.constants';

import { Question } from './question.model';
import { ResponseWrapper, createRequestOption } from '../../shared';

@Injectable()
export class QuestionService {...}

我只粘贴这些,因为问题是相同的,在这两个实体。

我认为问题在app.module.ts中,所以我做了提供者的导入,但这并没有解决问题。

app.module.ts

代码语言:javascript
复制
import './vendor.ts';

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { Ng2Webstorage } from 'ngx-webstorage';

import { ConductionTestsSharedModule, UserRouteAccessService } from './shared';
import { ConductionTestsAppRoutingModule} from './app-routing.module';
import { ConductionTestsHomeModule } from './home/home.module';
import { ConductionTestsAdminModule } from './admin/admin.module';
import { ConductionTestsAccountModule } from './account/account.module';
import { ConductionTestsEntityModule } from './entities/entity.module';
import { customHttpProvider } from './blocks/interceptor/http.provider';
import { PaginationConfig } from './blocks/config/uib-pagination.config';

import { UserProfileService } from './entities/user-profile/user-profile.service';
import { QuestionService } from './entities/question/question.service';
import { PositionService } from './entities/position/position.service';
import { CustomUserService } from './entities/custom-user/custom-user.service';
import { QuizService } from './entities/quiz/quiz.service';
import { ResultService } from './entities/result/result.service';
import { RoleService } from './entities/role/role.service';

// jhipster-needle-angular-add-module-import JHipster will add new module here

import {
    JhiMainComponent,
    NavbarComponent,
    FooterComponent,
    ProfileService,
    PageRibbonComponent,
    ErrorComponent
} from './layouts';

@NgModule({
    imports: [
        BrowserModule,
        ConductionTestsAppRoutingModule,
        Ng2Webstorage.forRoot({ prefix: 'jhi', separator: '-'}),
        ConductionTestsSharedModule,
        ConductionTestsHomeModule,
        ConductionTestsAdminModule,
        ConductionTestsAccountModule,
        ConductionTestsEntityModule,
        // jhipster-needle-angular-add-module JHipster will add new module here
    ],
    declarations: [
        JhiMainComponent,
        NavbarComponent,
        ErrorComponent,
        PageRibbonComponent,
        FooterComponent
    ],
    providers: [
        ProfileService,
        customHttpProvider(),
        PaginationConfig,
        UserRouteAccessService,
        UserProfileService,
        QuestionService,
        PositionService,
        CustomUserService,
        QuizService,
        ResultService,
        RoleService
    ],
    bootstrap: [ JhiMainComponent ]
})
export class ConductionTestsAppModule {}

我遗漏了什么?

编辑

错误日志:

代码语言:javascript
复制
ERROR Error: StaticInjectorError[QuestionService]: 
  StaticInjectorError[QuestionService]: 
    NullInjectorError: No provider for QuestionService!
    at _NullInjector.get (core.js?593e:993)
    at resolveToken (core.js?593e:1281)
    at tryResolveToken (core.js?593e:1223)
    at StaticInjector.get (core.js?593e:1094)
    at resolveToken (core.js?593e:1281)
    at tryResolveToken (core.js?593e:1223)
    at StaticInjector.get (core.js?593e:1094)
    at resolveNgModuleDep (core.js?593e:10883)
    at NgModuleRef_.get (core.js?593e:12111)
    at resolveDep (core.js?593e:12609)

这里的.yo-rc.json文件。

代码语言:javascript
复制
{
  "generator-jhipster": {
    "promptValues": {
      "packageName": "it.manuelgozzi.conductiontest"
    },
    "jhipsterVersion": "4.13.2",
    "baseName": "ConductionTests",
    "packageName": "it.manuelgozzi.conductiontest",
    "packageFolder": "it/manuelgozzi/conductiontest",
    "serverPort": "8080",
    "authenticationType": "session",
    "cacheProvider": "no",
    "clusteredHttpSession": false,
    "websocket": false,
    "databaseType": "sql",
    "devDatabaseType": "postgresql",
    "prodDatabaseType": "postgresql",
    "searchEngine": false,
    "messageBroker": false,
    "serviceDiscoveryType": false,
    "buildTool": "maven",
    "enableSocialSignIn": false,
    "enableSwaggerCodegen": false,
    "rememberMeKey": "cdda7ac3158dc63769dac817269341c665e771fb",
    "clientFramework": "angularX",
    "useSass": true,
    "clientPackageManager": "yarn",
    "applicationType": "monolith",
    "testFrameworks": [],
    "jhiPrefix": "jhi",
    "enableTranslation": false
  }
}

我在这里添加JDL。

代码语言:javascript
复制
entity Role {
    roleName String
}

entity CustomUser {
    password String,
    enabled Boolean,
}

entity UserProfile {
    firstName String,
    lastName String,
    email String,
    contact String,
    domain String,
    expLevel Integer
}

entity Position {
    description String,
    domain String,
    status String,
    createdBy String,
    createdOn LocalDate
}

entity Quiz {
    startDate LocalDate,
    endDate LocalDate,
    status String,
    marks String
    questionsNumber Integer,
    complexity String
}

entity Question {
    section String,
    description String,
    optionA String,
    optionB String,
    optionC String,
    optionD String,
    answer String,
    marks String,
    status String,
    complexity String
}

entity Result {
    obtainedMarks String,
    percentage Double,
    appearedOn String,
}

relationship ManyToOne {
    CustomUser{position} to Position
}

relationship ManyToMany {
    Quiz{questions} to Question
}

relationship OneToOne {
    CustomUser{userProfile} to UserProfile{customUser}
}

relationship ManyToOne {
    CustomUser{role} to Role
}

relationship OneToMany {
    Position{quiz} to Quiz
}

relationship OneToOne {
    Quiz{result} to Result{quiz}
}

relationship ManyToOne {
    Question{quiz} to Quiz
}
EN

回答 1

Stack Overflow用户

发布于 2018-01-14 19:48:30

和G. Marziou的谈话帮助我找到了解决办法。

有不同的问题。

1)在没有sudo的情况下,使用终端命令启动build没有编译所有文件,原因是EACCES隐藏了错误(终端没有显示出来)。

2)一旦启动,控制台就会给出生成的component.ts文件的错误。JHipster似乎生成了以下代码:

代码语言:javascript
复制
@Component({
    selector: 'jhi-user-profile',
    templateUrl: './path of the template',
    providers: [NameOfTheService]
})

我编辑了删除providers

一旦完成,我建造了它,它起作用了。我正在使用MAC操作系统塞拉利昂,也许这篇文章可以帮助某人,所以我决定分享同样的。

特别感谢盖尔的支持。JHipster是一个做得很好的产品,它的团队在支持和帮助方面绝对是惊人的。

继续,伙计们!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48239675

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档