设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11204|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + E7 \; M( q1 ^
, K8 T7 A. V' A0 |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ F. E5 }/ x: @2 j, j. N
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! q$ T/ _1 J- O; W9 e
swarm.SignatureNotFoundException
( \2 L+ ^7 I. i7 w( e        at swarm.Selector.<init>(Selector.java:76)
* }2 `1 K( E2 g; u        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ t: q7 C/ ~  j2 Z9 U        at ActionGroupDemo.main(ActionGroupDemo.java:67), N, r& W6 {' R$ K" G+ ?: G+ |! T

4 ?6 A( v# a9 B8 y: a( W
/ L- ^: a; \% L# v& i6 J4 J+ bimport swarm.objectbase.SwarmImpl;
, `' R2 E) \4 A8 gimport swarm.objectbase.Swarm;/ g% D3 X, j8 ^
import swarm.activity.ScheduleImpl;* n+ g! \9 T' u: W+ h
import swarm.activity.Activity;/ R; S1 ^9 p; k5 s0 y; L! W
import swarm.activity.ActionGroupImpl;
% n0 L: u& T$ Rimport swarm.collections.ListImpl;  q, Q- r3 O4 j1 l( `3 Z, Q
import swarm.defobj.Zone; 5 I1 d& i& @+ H: X. f
import swarm.Globals;  J# _5 Q$ @+ M, \
import swarm.Selector;' g* b: c8 D  F
import swarm.activity.ActionGroup;
$ U! w9 N4 @* x8 c3 Y! N% t, O3 hclass Agent {9 o  ]2 y7 `% o/ t" W2 ]- p
        char id;
2 {- D2 [5 a, q' F' v/ r- R4 Q$ m" z2 H+ g  b. O2 D
        Agent(char id) {: k0 C( ^8 _; M9 T& Y" t
                this.id = id;* ^0 @4 S* c' e: ?9 s
        }9 a8 k4 L! J% V) @# e: d6 s

- I4 I+ t$ f! \) s5 r        public void agentStep() {
0 R4 o: f4 m7 I/ t3 d) v1 D                System.out.println(id + ":" + Globals.env.getCurrentTime());- {0 y# |3 P# _4 F+ y
        }
; o5 @2 ]/ X9 P}
; g3 ?1 r/ k, y4 v/ \7 ~1 ~5 m$ l
public class ActionGroupDemo extends SwarmImpl {; @* c8 s, i& q+ J
        ScheduleImpl schedule;. @, m- X0 |) @
        ActionGroupImpl actionGroup;5 Y6 h# b5 \3 d- Z
        ListImpl list;% _  {$ h* F! M. t1 W
        char Id = 'a';3 _7 M1 w# T" P+ g& d# T5 o* _
! J" M0 h2 ?+ I$ y+ u5 C
        ActionGroupDemo(Zone aZone) {: _, M/ b" U& K) f! `3 R
                super(aZone);# ~4 A1 k4 X4 f6 `9 D/ H1 X5 ]
                list = new ListImpl(aZone);
# x6 d6 d. `# u: }1 M                swarmSetp();6 ^8 I7 a- b/ B
                actionGroup = new ActionGroupImpl(aZone);
3 Y9 I3 K, q' @& [- w                schedule = new ScheduleImpl(aZone);. N( n7 K7 g4 U: V3 u! ]- `" k
                try {
+ ^8 t# O% Q; ?' W( q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: Q+ _& M0 X7 A7 v% M
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- k5 q/ v7 }, S: ~6 V7 A                        
9 G7 q( p  W5 |) ^4 b, P                        actionGroup.createActionForEach$message(list, agentSel);
6 I- L; U  \  _% N0 E                        actionGroup.createActionTo$message(this, swarmSel);
& F* @( q9 j/ R4 E6 J" h                        schedule.at$createAction(0, actionGroup);$ t- ]3 [- B4 V4 F1 D. r3 G8 p
                        schedule.at$createAction(1, actionGroup);/ v: ^' W5 T7 [( F/ b
                        schedule.at$createAction(2, actionGroup);5 ~& n5 a$ I; m+ o

4 ^0 g+ U! A4 A9 F& I. I! `                } catch (Exception e) {5 B9 i/ H7 M. d0 Z
                        e.printStackTrace(System.err);
  W3 v7 w# l2 `  o: J) k$ t                        //System.out.println(e);
/ ]7 H4 H8 v  J/ i5 m6 b" ?                        System.exit(1);
9 j4 N  @) I" O4 i" l0 ]                }
  p" M! y, n) K  t$ z* _3 v( ^: o9 n% h, G
( h8 K5 h6 Q0 m' }& U; M; D
        }! s0 W6 V0 S: Q& J4 |% e. V, n; z

% Z. c3 M) e" o        private void swarmSetp() {- o) q+ C+ d$ c  C5 f- t+ @  I1 Q
                list.addLast(new Agent(Id));( ?9 n3 }0 q1 |  w/ n
                Id++;
# q/ @' f- f, ]: n        }
  V2 O2 H/ X' z5 q7 f2 }0 [
+ `  m8 r0 o  r- {3 D        public Activity activateIn(Swarm context) {5 ^9 I' W. k' h* o
                super.activateIn(context);: I# Z1 M/ c& N
                schedule.activateIn(this);) S) C# f2 G$ h4 O4 J8 V
                return getActivity();( [: p5 ]* f/ C3 p  Y5 k5 V$ v
        }
/ e! I; }$ B. F  u7 Y' @2 c
5 H0 `* }: [1 t5 s# _        public static void main(String[] args) {
& z* S5 f! `! L                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ S6 H/ e. I# s                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);  y4 ^9 z3 [6 a# B
                swarms.buildObjects();' P+ T2 _8 t6 }8 a& E
                swarms.buildActions();
4 [2 i/ y7 r. H- J/ l# }                swarms.activateIn(null).run();
' j4 t* F0 p6 [  J9 l# A        }
5 I' p0 O! [8 w# {* d+ L
5 v: S3 E) B/ l- ?& A8 f( y}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-5 23:16 , Processed in 0.014765 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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