设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7975|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 ^  w4 Z' n. N  ]' A1 z' l# V8 U7 w( M- N- R* X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- r/ o+ i; }# @0 J# V
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 j* W5 M7 }6 v. G+ g, X
swarm.SignatureNotFoundException
1 O- e2 }8 f; f% q        at swarm.Selector.<init>(Selector.java:76)0 b( s% n& p4 g) p  v
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" f6 H2 D, Y( Z0 X2 ?4 {
        at ActionGroupDemo.main(ActionGroupDemo.java:67)$ z' O+ x& o# \6 ~9 T" a/ |
! j; l. Z  g' [# o" d7 m  d

  w+ g4 l) k/ I. \. ]  P! yimport swarm.objectbase.SwarmImpl;
: t- a& T/ t2 {$ Ximport swarm.objectbase.Swarm;* g% E! N4 F! L7 G& `
import swarm.activity.ScheduleImpl;
# U  M' V, {9 e1 U; p/ c/ L( n$ |import swarm.activity.Activity;2 U& B2 _! M( O
import swarm.activity.ActionGroupImpl;
. a4 c$ f, m5 p+ `! Wimport swarm.collections.ListImpl;
8 }. Q3 ?. t+ H" _9 j! bimport swarm.defobj.Zone;
! B( a/ g8 Y- @. f  ]2 t( X" fimport swarm.Globals;
  y! l1 r# e8 |* |. _2 o) Yimport swarm.Selector;1 X( h! n3 E% \, E3 n
import swarm.activity.ActionGroup; 3 D( ^# V; M: \# J9 C
class Agent {- ~7 Y& _* z1 j
        char id;
- l% \% X8 M" ~- O; m
/ x( a" V* l3 w1 G7 [! G5 x$ {        Agent(char id) {
1 z, x2 j- y8 Z                this.id = id;
& L; x$ \9 ]4 Z: K) h, ]( {        }% i. x, G8 ~$ _3 S

5 A. D$ o: T, q" e3 e0 I/ Y* N        public void agentStep() {+ A" Q+ i* T# S( T- }5 Z
                System.out.println(id + ":" + Globals.env.getCurrentTime());$ T9 T) M& F' H% o" f# b2 }& ~) H
        }
% T) `$ ]6 H- e% ^  y1 Q}
+ Y" F$ H* d* e" P& x0 t
/ g2 y( `9 E7 a' C  D& U; f7 l4 `* ~public class ActionGroupDemo extends SwarmImpl {
. o  ]/ D. m3 f4 |+ z. u  x6 E        ScheduleImpl schedule;
9 c$ I: ]; k* m        ActionGroupImpl actionGroup;- ^& H" u  e9 _9 E. Y2 M3 q# o
        ListImpl list;
+ P% T; g( ^) j6 ]+ k        char Id = 'a';5 D2 R1 C8 t. R+ \3 d9 W

7 l+ z2 A, d5 p; r5 n4 X/ W        ActionGroupDemo(Zone aZone) {
0 N8 V9 \  z  N3 P                super(aZone);* y$ b. L6 v) f/ A' j/ E: l6 L+ s" l
                list = new ListImpl(aZone);
# W% f; h7 K9 G! t2 d1 Q                swarmSetp();/ Q5 o& m, c0 Q- ?" t
                actionGroup = new ActionGroupImpl(aZone);
1 N5 x6 X( C' @/ T5 p                schedule = new ScheduleImpl(aZone);9 e$ r& b5 l4 J% O2 |' p
                try {0 J3 O" j" }3 M: y
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  W& S" s$ z' f3 [2 f6 ^
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# y# w2 ?; ^9 y, B$ c                        
0 O8 |7 `& V5 V, b                        actionGroup.createActionForEach$message(list, agentSel);
, y4 `! Y3 K& J& N/ o% |                        actionGroup.createActionTo$message(this, swarmSel);
5 O9 L$ t5 B' x( j                        schedule.at$createAction(0, actionGroup);- D! q. j' V) z, C. y; @* |
                        schedule.at$createAction(1, actionGroup);- G' Z+ B- s  w
                        schedule.at$createAction(2, actionGroup);
& s% c7 v, z+ I" e7 e* D8 ~" T
* }+ K* L1 E2 I, q0 q8 U                } catch (Exception e) {$ N+ F- K  K5 w3 t7 b% J8 M2 A: ~
                        e.printStackTrace(System.err);
* \4 t6 [/ q: S7 G2 Y, ^                        //System.out.println(e);0 a  Z: Z5 ^, z
                        System.exit(1);# D1 A) `4 \1 ]" M
                }7 }5 A, V6 n: A4 I- P

8 ?& z9 U3 C9 E  ?8 a+ G" j" R1 r4 l3 {$ e
        }
7 G. T+ |( l: C* v6 I: c7 s1 F: _' u7 {
        private void swarmSetp() {1 A3 `! U3 u' W0 @
                list.addLast(new Agent(Id));
0 e8 ~% a( e0 B9 m3 q/ U                Id++;
# J3 x: p1 K  `7 ]4 l: n        }( n* M' s# m0 N/ F* B; V9 ~( O% F  A6 c
! D, T* {0 f# N& r) R( Q; e  Q
        public Activity activateIn(Swarm context) {
5 ]. v" {3 s3 y  n; E) G: a                super.activateIn(context);
7 x9 ~$ C; m7 h1 Y& N                schedule.activateIn(this);
: P( u* k" i- o% g+ S                return getActivity();1 \8 @) d+ s. |8 B
        }
1 ^5 }$ l7 p1 r  C- R$ p# j0 i- H7 v! n
        public static void main(String[] args) {
8 _# J- k0 E7 v% z4 P) }                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ t& W0 d* J! j) T
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);  Q' z* {$ \" y7 H* D
                swarms.buildObjects();
+ T6 v2 e) ]5 D* W  Z$ h+ A                swarms.buildActions();
6 A) i$ ]( `4 n; J5 `; W1 j                swarms.activateIn(null).run();0 D; l" o" I: ~- T
        }5 a  @* T7 o$ w6 y& o& l

" U' R# X) \# c2 l9 H6 j}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-25 08:02 , Processed in 0.018266 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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