设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4793|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' V1 i1 X3 ^& x4 \' S+ z. R  B
/ v& s6 D( z. W) k0 E, G
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ A0 V  i/ v! T$ Q+ Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 {: _- H  E5 m/ h
swarm.SignatureNotFoundException! X0 r  y, u8 ?( {7 P
        at swarm.Selector.<init>(Selector.java:76)% ~7 `$ L% R0 a* r
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% j7 {! P8 I1 ]. F
        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 v& G& B. z8 I1 J  W: k7 U

1 u  ^: |& C1 O5 E
+ h& s$ k! b% ?- Simport swarm.objectbase.SwarmImpl;: l# ~/ R+ e8 k; D4 E; g: v% \
import swarm.objectbase.Swarm;
& D! c0 d. W7 G$ ~' {import swarm.activity.ScheduleImpl;5 R* @% q0 g. u" O9 z" f1 Z
import swarm.activity.Activity;
: {) |& v% U! D+ ^# C% x# wimport swarm.activity.ActionGroupImpl;3 u7 h; x" N/ p. B# c
import swarm.collections.ListImpl;8 l( P9 E0 B# S3 s2 \& w
import swarm.defobj.Zone;
- g/ F; v! |2 s) Timport swarm.Globals;; D, L' e+ J" o
import swarm.Selector;! z3 C+ O6 {9 t3 U0 H+ O$ N5 T
import swarm.activity.ActionGroup; ' _  M5 F$ p+ u+ F3 A3 D
class Agent {
! `) n: T# q2 @2 X) ^! o/ S0 M        char id;
0 \4 ]" t6 y! c$ j
- Y- o& _6 W+ s* b* d        Agent(char id) {
7 \5 F3 C, r% P8 X6 S  J8 V. w                this.id = id;* h4 R2 D* o; U) |& `3 g- N# R8 Q
        }
* v5 {3 Z( b5 e# c/ C3 F
2 D6 N; V: p/ G0 o0 T        public void agentStep() {" B5 ]% X0 E- X' H" w
                System.out.println(id + ":" + Globals.env.getCurrentTime());
* n8 z3 A/ z8 H  |: j        }
0 R6 _4 V2 Q" v# I}. U( c9 @/ {6 _& m0 m" i

0 S7 I! E! x2 ]: o! Ppublic class ActionGroupDemo extends SwarmImpl {
) X( Y  H+ ~1 ?, A        ScheduleImpl schedule;7 L4 T' |' D+ T4 S
        ActionGroupImpl actionGroup;
# d9 ]$ F' s' q        ListImpl list;" w0 V4 T; l- ?2 s
        char Id = 'a';
& W) g9 F+ S7 S! L/ \& Z
2 x# F3 @' B9 e* \5 v* j1 Q; x        ActionGroupDemo(Zone aZone) {$ `! K1 q1 P* B2 j9 Y! A3 N7 H
                super(aZone);
; E9 V( Q$ \2 Q, a2 K% s) ]  H5 H                list = new ListImpl(aZone);
) Q# E& l: x& I3 y7 R; R, K                swarmSetp();
5 c0 D7 V- k: ~# k( ]0 Q                actionGroup = new ActionGroupImpl(aZone);
9 K' w, n9 [  W6 r1 i1 ~+ \7 i  @                schedule = new ScheduleImpl(aZone);; y/ t$ V, s' Z3 X
                try {
/ u; d  o8 D% B( G: V/ K" t; T2 `& h                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: U* M! G! {5 k# D- `8 L
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 f1 `  q6 p+ R9 n* e1 ^* g8 B( \( a                        - b! l( N( y' c; o
                        actionGroup.createActionForEach$message(list, agentSel);
8 {6 d" A6 L2 \- _                        actionGroup.createActionTo$message(this, swarmSel);
) d0 }$ t3 ~% \$ ]- N/ F                        schedule.at$createAction(0, actionGroup);1 k6 I+ n: z9 L  {/ h  `$ W
                        schedule.at$createAction(1, actionGroup);0 \$ M7 u1 F5 Q1 g$ J
                        schedule.at$createAction(2, actionGroup);2 c. K. V# w9 h2 G" W
0 g; r& ?  a; m' Q1 [
                } catch (Exception e) {9 c! H8 B, c" B: s- b7 n
                        e.printStackTrace(System.err);5 Y5 o, E& L( g+ H5 e5 V7 E! M% e5 q
                        //System.out.println(e);: Y( x; t) [9 k
                        System.exit(1);
  V" h4 s9 ]1 c                }/ f; H( A# C, D2 s

/ S' h) H: {7 W1 H: t1 k9 a
% n4 s- v; _+ O5 E$ j+ |8 g+ H        }1 m3 b/ o9 h/ M+ g8 b  U
2 O$ C; b) A! J0 N; p9 T1 g
        private void swarmSetp() {
+ s: L# k! E" D                list.addLast(new Agent(Id));
4 ?- v: F1 Q, N7 g0 G, k                Id++;
8 O  d* F0 W; _* k% @5 _, v2 r        }  J8 E- y1 q) G9 q' @1 P

! o0 D8 j: o' i( D8 `; o        public Activity activateIn(Swarm context) {
+ b! v- `, y0 \; R% {- N2 d7 w                super.activateIn(context);. v* p, y2 E% ^' g: G
                schedule.activateIn(this);2 ~' v3 H, S# G
                return getActivity();  z3 t  M$ }% G+ y
        }  e3 Q5 E: ?, k0 m

. ^0 X8 K7 i/ p9 K: D- n3 ]7 z9 }) q        public static void main(String[] args) {6 ?5 p, M% ?% f/ G6 ]7 q
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! s; u0 @: R/ D: _" ^                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; @0 G$ `  x* i7 @. J2 }
                swarms.buildObjects();
( ^7 @, k7 c4 P                swarms.buildActions();% U& {. S. N4 g7 @1 u( y
                swarms.activateIn(null).run();
6 z0 s3 ^+ Z4 P: E; W        }
6 p  ]: Q7 v& v: Y" ^% J
6 Q6 l; h- n. C9 M& {}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-11-12 09:26 , Processed in 0.019912 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表