设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6875|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' L; `& g9 k* }* T& v4 `% H
9 j1 _% L/ ?$ N& v  ]2 c' b4 ^
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. q& |; C; M. g: y$ m- z$ D2 X
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 k! H# i( O8 Gswarm.SignatureNotFoundException
0 m6 D( T% A2 x; `2 F3 @" C, ~/ _        at swarm.Selector.<init>(Selector.java:76)
6 V9 ~& u. V$ x8 c! l! e        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 l( {2 W2 {0 O1 }1 b; B' O" [        at ActionGroupDemo.main(ActionGroupDemo.java:67)1 F! B1 Q9 T: O8 S. i

/ e; n: ]3 a3 f( T& B/ B% @) W
$ {; E, H9 R! {( k" U. k9 Zimport swarm.objectbase.SwarmImpl;; E3 L' T) h, U. X
import swarm.objectbase.Swarm;# @2 q( {5 i$ w# `
import swarm.activity.ScheduleImpl;
9 L6 \9 L3 r# [import swarm.activity.Activity;
7 G9 k) J' _  R+ C7 d* `, Iimport swarm.activity.ActionGroupImpl;2 G+ m2 r4 |9 R/ J8 g
import swarm.collections.ListImpl;. W2 ^( G1 `* c2 ^) t" N
import swarm.defobj.Zone; , G4 Z7 A1 D6 d' K
import swarm.Globals;
2 Y/ v0 x; K. `9 j- [import swarm.Selector;
- e9 s) I7 X1 f- _: fimport swarm.activity.ActionGroup; 6 u  c: Y5 L4 K$ W; w, b1 [$ Y# g! D
class Agent {
/ R' y3 \; a: \6 x( c; U        char id;
# ~- @  k& ^! K+ i. G, W! c+ R5 u$ o: r1 c- H- F& i, Q: o
        Agent(char id) {
% B, @8 v( a5 c3 J) k: a; T                this.id = id;
( J& }! \3 A; c2 _" y) P8 q  q        }. s5 [! y# w+ O8 F( X
% X  W7 `' t2 _$ E- A, A
        public void agentStep() {/ J0 e! I8 A# q' M4 Q
                System.out.println(id + ":" + Globals.env.getCurrentTime());/ F3 D* v& Y& ?' l+ N
        }
* `' r2 |8 V( E4 A! T1 ]1 [1 K* B' f}
5 K: d6 u% F, U
- n8 e" x& d; {( _public class ActionGroupDemo extends SwarmImpl {3 X. x6 b0 Y1 W1 \2 C. @, p
        ScheduleImpl schedule;
: U! _! R4 ^% B( R6 _7 W        ActionGroupImpl actionGroup;# N8 [4 d7 H$ L# z
        ListImpl list;1 G+ \. w, a6 _2 U+ b, d* R8 |. E# f
        char Id = 'a';
0 t/ A7 |( l1 b0 o& `/ m, X$ ]6 s! _
$ e5 v) R5 b3 D3 H        ActionGroupDemo(Zone aZone) {
3 I! c& P5 R6 i0 ~; @; S                super(aZone);
, z1 b; r7 Y' f" p& F, g                list = new ListImpl(aZone);7 H$ a7 \/ I( d; G; u1 `8 l+ b
                swarmSetp();
% _! n2 u  k" v) v+ c  \                actionGroup = new ActionGroupImpl(aZone);1 Z. P( {* I0 ^/ z+ ~" q
                schedule = new ScheduleImpl(aZone);
. y5 S# b  y6 m) Z  F$ D' y# V                try {
3 H+ `. v# a' }                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ u9 W- h# D% C2 @7 n( V5 n$ l6 i7 d
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* |& ~/ h  U$ O
                        ' ^# M+ w/ I7 B9 n+ z( z' `
                        actionGroup.createActionForEach$message(list, agentSel);
) z6 Q" a# P8 r3 y. u7 Z                        actionGroup.createActionTo$message(this, swarmSel);
* b# K# r' x6 o* m5 s                        schedule.at$createAction(0, actionGroup);
) `& f/ v2 f" \7 s" I                        schedule.at$createAction(1, actionGroup);# h/ w) B5 R( T+ Y' X) W
                        schedule.at$createAction(2, actionGroup);8 z4 e) y4 o' p0 H8 D3 l
) t! O# V# B3 k2 j/ ]
                } catch (Exception e) {7 n. M0 f4 c$ T* `# g+ M2 ^0 t
                        e.printStackTrace(System.err);! n  I$ S2 t$ ~2 L6 m8 }
                        //System.out.println(e);
/ C8 o! T9 i; m' {                        System.exit(1);
* L" G' c& p1 b% b* W7 A                }
+ j4 h: ]- h/ b' m) y. u8 R7 i4 \( F3 z% x1 s5 p1 m
$ x: A8 Q. Y! _
        }
" T) G$ p- p. S  u% V6 A. P) r2 h
        private void swarmSetp() {8 O; y. t! W8 ?, z6 c
                list.addLast(new Agent(Id));4 u3 M6 y3 A6 f) A9 d. o! w
                Id++;# L% ?2 d/ E8 ^8 [7 f
        }9 B/ f- e# Z; O5 F

( P" l; g  N" w. x        public Activity activateIn(Swarm context) {
" g! }- p4 m- C                super.activateIn(context);  g, i7 g* l, l; v% s
                schedule.activateIn(this);
; A* e# a8 n! }+ E9 W" Q                return getActivity();
7 h8 }) i9 l6 u% `- U        }
' C5 t: N* ]% R6 G4 o- M1 E6 s7 B6 _( x& d4 C9 V' ~( ~
        public static void main(String[] args) {8 J  F% v5 o* f1 d) g2 ^
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* H# m' `4 T3 j, X) t) s) a$ T                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- K: F& T8 b' H% D7 X" h( o! F/ b
                swarms.buildObjects();1 B2 W# l8 u  ?
                swarms.buildActions();, ~" k" B$ @2 |9 s3 H
                swarms.activateIn(null).run();
5 A* _8 `  p' z5 K1 ^: C0 x% m3 ^        }
7 o/ i. A5 D4 _) F  n' j. W0 k, k* r" X# y  D
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-11 21:07 , Processed in 0.016770 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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