设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10462|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 h; M' V$ B+ D6 O3 I

" _- [% w4 y  X& F/ h本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 z, S' |" u- V. I以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
6 t, |! c8 `/ Q0 b/ eswarm.SignatureNotFoundException0 X% c8 P! T, l1 s  C5 @4 ^* w
        at swarm.Selector.<init>(Selector.java:76)
" o" X+ o/ i3 a% x        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 M7 v; `: ~" t5 G        at ActionGroupDemo.main(ActionGroupDemo.java:67)! O' _" @) c* Q4 l2 [; \) A( J

; q& y7 o! \3 `4 D# `! f4 [: p: B* B4 l9 I
import swarm.objectbase.SwarmImpl;! X/ U2 `. w8 c* C
import swarm.objectbase.Swarm;* S0 H8 d, j  S  }$ a8 {, l1 Y" `
import swarm.activity.ScheduleImpl;" Y' B3 O' h/ s5 }4 k' _# \
import swarm.activity.Activity;
# o3 H+ P7 S1 a( D6 R" n3 \import swarm.activity.ActionGroupImpl;% B4 z& T- d4 F
import swarm.collections.ListImpl;. h" q8 k2 F3 _- ^
import swarm.defobj.Zone; " W- H" _% Z! G9 [+ s
import swarm.Globals;: `- X  o9 j/ f1 Q- V2 S
import swarm.Selector;" f1 ^2 t1 ?! i+ T: a
import swarm.activity.ActionGroup; : k$ p( b7 O5 }2 x
class Agent {- y& M/ ^1 B: T
        char id;, B. K4 v6 W9 e0 ]
+ A; l" R( d" a' f+ F3 M" }
        Agent(char id) {! o& v/ v, Q0 q, B
                this.id = id;% }0 j6 H! j) O& l5 B& R+ p
        }
: @! s( U7 a$ y1 H/ d  Y# W, e1 r
        public void agentStep() {" D8 _) x$ d$ N9 f/ }2 G
                System.out.println(id + ":" + Globals.env.getCurrentTime());3 ~- ?  @7 ?# Y; @2 {* g
        }
+ A- u) M. r7 J/ T- F; [}6 t+ S' H) g# b3 O+ P2 B1 K
% A$ `0 @) J7 @, f; [% l
public class ActionGroupDemo extends SwarmImpl {
2 J* U4 |% m& O9 S0 e        ScheduleImpl schedule;
$ x6 r* F- O3 B; z6 Y        ActionGroupImpl actionGroup;
/ d  f  Q/ f. t9 @8 H' w- G* {6 j        ListImpl list;/ e* {; A1 b' P1 F
        char Id = 'a';7 b/ i. V8 p, J" \

9 e" X, A5 X  W/ ~4 F1 @        ActionGroupDemo(Zone aZone) {( t* @' W  F  G# c' u! v
                super(aZone);
% h" O1 m, _9 M  i/ S                list = new ListImpl(aZone);
5 G: D! ~: l, Z! O( B                swarmSetp();7 C+ H0 [- f% e1 n9 o' W: i
                actionGroup = new ActionGroupImpl(aZone);
- i5 q! v5 g; r, d. k                schedule = new ScheduleImpl(aZone);
1 k6 d' h( h0 c' N. F) P: ?                try {& V8 l7 V8 N# T5 d0 B+ C
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
" o$ }7 u% C& }) i$ B$ l+ U                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% O( T6 U" {  ?5 C0 j% L
                        5 a  |+ {; ?; s5 ^* S2 b
                        actionGroup.createActionForEach$message(list, agentSel);
6 }% `1 A* z- M1 S' R                        actionGroup.createActionTo$message(this, swarmSel);
3 o+ O1 U! _* `$ W                        schedule.at$createAction(0, actionGroup);
( X+ Y: E! i' |2 k3 H                        schedule.at$createAction(1, actionGroup);
/ Q  n# Y( ~9 a5 @) L                        schedule.at$createAction(2, actionGroup);
/ s2 _' L! A* z6 Q' s% T6 X9 r9 D+ ^& U! f
                } catch (Exception e) {  R2 k$ ~/ `7 I8 C% j8 f5 d6 o
                        e.printStackTrace(System.err);1 a8 f5 O8 H# Z' x, W
                        //System.out.println(e);2 ?# P' b4 q+ J& d* I' S
                        System.exit(1);
$ f3 X+ Z$ v- l3 U& i1 Z/ t                }
' e& g( S, n0 ^
+ T8 \1 R. m. X, v
. t# m" ~6 Z* c  f* E2 S        }
, B4 i* N2 W: k3 ?5 x6 }8 }+ \3 h: N4 p6 ?8 Q
        private void swarmSetp() {
. X5 s0 X6 k+ I0 A' k* |                list.addLast(new Agent(Id));0 ?- x5 X" C/ G9 u5 w0 K: ^
                Id++;: @2 t+ w9 {/ S; m8 x
        }* K& V# F8 c- U) ?  I6 \# i: S
( X$ r0 z8 j6 y  d0 m* n8 L/ P2 ]
        public Activity activateIn(Swarm context) {; c  {3 B1 t& C
                super.activateIn(context);
6 u3 w8 {: j1 y1 V$ W! ]8 ?7 }" D, o                schedule.activateIn(this);
( {* k/ k+ P. B7 y                return getActivity();: D% Y! b7 [) z2 m+ S5 Z7 @) q
        }
4 B+ R  P8 |  e) _3 n: k8 H9 L0 u& W9 ^+ O( s9 e1 c6 a, m1 c" k! i6 Q
        public static void main(String[] args) {9 E5 p6 A! e# w9 }* x# V: _* t$ J
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. ?' m$ x3 S+ N+ G' o' R                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 ~5 ]1 M' N3 X
                swarms.buildObjects();' r) ^6 |1 W( H
                swarms.buildActions();
% y% x" _# o$ F2 n" G0 {                swarms.activateIn(null).run();6 \: d" X# U; ?
        }4 E, K& T3 s' R8 U1 L! H  p3 U) i
; a* r6 D3 b6 q, v- N
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-14 20:02 , Processed in 0.020545 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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