设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9981|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , K- R) L/ p3 g8 F% x* i

# y% p* b* u% Q4 v. ?* D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21  T2 A+ v9 I  q- ^
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- l! Q: t) C7 L% b3 o: I( P- n0 d
swarm.SignatureNotFoundException
+ _) a& Z+ Z# q8 h. E$ ^        at swarm.Selector.<init>(Selector.java:76)
6 Y2 R- i  f: f% s. T" e# X+ |        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) e' y3 n6 {; \, Y4 ^* R8 N        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. m3 A  F% S- f
  m/ r- x. a( v% F& L; ]) U% N) e) ~. l
import swarm.objectbase.SwarmImpl;
- B  A) b5 A. f1 |- Kimport swarm.objectbase.Swarm;2 A; u+ M3 [7 C
import swarm.activity.ScheduleImpl;
, P4 }( W0 l2 s1 L3 wimport swarm.activity.Activity;
4 E  }4 p1 A; T  s& r; d9 ^import swarm.activity.ActionGroupImpl;9 i/ ?, ^( y' w+ a' K6 M
import swarm.collections.ListImpl;# [: ~$ T- @" _0 c8 V/ T7 X. m0 L
import swarm.defobj.Zone;
6 m" p$ |: I7 S" g8 H6 }import swarm.Globals;' H- C  D( R9 l) ?
import swarm.Selector;
$ n! Q) t  Q# d+ d$ H* P. \import swarm.activity.ActionGroup;
& s: @7 u# X; a4 T9 bclass Agent {7 x- _# [; l4 e: W
        char id;
& y5 o. @! ?( j5 x8 T: J
: ?8 }: i! F, @. r% L$ p1 M8 D. y        Agent(char id) {
/ }  r; w# J: }& q; W+ j                this.id = id;3 R% l5 A: k* n
        }
9 E( i* |& S, X- q% H: p  n
9 U' v# Q7 \0 F& c% K        public void agentStep() {% _4 p* A& ?1 H' T
                System.out.println(id + ":" + Globals.env.getCurrentTime());
) t  A) J5 G" q6 W8 T3 T8 v        }
( [) E6 H3 a0 l8 U/ l! x- e}
$ R2 L9 G& F$ }' n( k+ ?- w+ K& B& h* L& \
public class ActionGroupDemo extends SwarmImpl {
# k7 }' \3 L; ~4 g2 s0 g        ScheduleImpl schedule;
1 a5 N' h( P5 S* R( b        ActionGroupImpl actionGroup;, O, x9 B# I3 m
        ListImpl list;2 o9 ~3 d/ [& k( Y0 u1 D6 I, T
        char Id = 'a';
. K+ k( \' b7 e! w( `" h
+ Z0 ^, K0 o% A. x" h* d! I        ActionGroupDemo(Zone aZone) {
) T# I' \9 [6 \  _( P6 F                super(aZone);" K% P1 o9 i  e9 C, X* y8 y6 a
                list = new ListImpl(aZone);
9 s: K$ |3 W8 ?- a                swarmSetp();
* O9 |0 l8 u: q2 B" e' y9 I                actionGroup = new ActionGroupImpl(aZone);
4 l) Q" Q% e% u: b                schedule = new ScheduleImpl(aZone);( ]; O+ [* A  r/ W) i* ]  X. H
                try {# b2 Z/ q. k8 R, ^) [; B" j
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 g; D1 k( d7 i                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ K! b, b1 Z  k( D) P& U$ `, e$ ]1 N
                          W, g+ _1 C9 S, l& Z. R
                        actionGroup.createActionForEach$message(list, agentSel);
8 d# {2 C8 A  t( e( @1 p% a1 F                        actionGroup.createActionTo$message(this, swarmSel);0 a# l* O! ]* U8 [+ Q+ D& i0 \5 L3 |
                        schedule.at$createAction(0, actionGroup);
" r7 ]# j. ^: m5 R" @                        schedule.at$createAction(1, actionGroup);
& I) b: i- p2 P& X/ D4 c                        schedule.at$createAction(2, actionGroup);
8 w+ ~2 F4 Y+ N2 s6 t9 `/ J) \2 Y: _6 n6 g7 G7 L
                } catch (Exception e) {. J+ [+ A5 N% K
                        e.printStackTrace(System.err);) j: z* |1 B0 S2 f3 A+ I( I
                        //System.out.println(e);
9 }8 Q) K2 ]+ n# y1 C                        System.exit(1);, q) u6 p. o# R; P' s* t
                }" y: ?( I2 \' `9 S

; T3 \2 Z4 E4 `* r; O' A
  Y% b) x; [6 ?1 x        }
1 I1 ?8 [5 w( o; l/ j( B
$ H( N+ B1 J# B" ?/ e1 S. B( I5 A        private void swarmSetp() {
: `- t, C, D8 U                list.addLast(new Agent(Id));
9 C5 y  q# R6 r$ o# q! g1 _% C8 D                Id++;
1 k8 H$ d' L6 i) f        }
( |4 K- U! ]- S" c! H( H# V2 k, [* W  K. H6 Q1 G
        public Activity activateIn(Swarm context) {
  }& s# y/ I9 f8 @5 x                super.activateIn(context);+ b4 I3 T5 j4 v  n1 h2 B2 Q; r1 ]
                schedule.activateIn(this);
0 m/ b, U- \4 V& l, V/ }                return getActivity();" p- \4 c+ \! ?$ N' T; f: X) h
        }5 {( |' u8 `4 ^1 C0 D4 k
" s; N. D" ?5 R" D
        public static void main(String[] args) {( g2 f/ A1 E; @3 G2 ]
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);  J& b, f& W4 y  u. \
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" e+ I5 ^4 |! {
                swarms.buildObjects();
/ I  d. W% X; v* g                swarms.buildActions();) M+ U3 X- G& U0 c, Q: B3 H
                swarms.activateIn(null).run();2 ^* z( |5 w' h. {: y. U7 v
        }$ T1 d; L% Z! M, W; \, S
, J" z% u) `6 u. ^5 W8 Q
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-30 09:04 , Processed in 0.018278 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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