设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6491|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 u- ~4 Z1 A, M. {2 C$ ]5 N1 h- w6 `! U* s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) P$ `! A, W3 u2 b+ X
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 W; x8 M6 {& s' C  n2 Q/ y* X
swarm.SignatureNotFoundException
( I$ N5 T% S. j0 v        at swarm.Selector.<init>(Selector.java:76)
: ?" e9 m; v# n' S7 ~) O" ^9 u# q        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% t4 X! g7 n$ j
        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 N8 F. o2 b1 T2 L/ N) r
, P' d  W' @, A0 d6 R1 C
0 H% ^5 g; R4 Z5 H1 C# X* [+ [
import swarm.objectbase.SwarmImpl;
9 X0 u6 V1 Z( {8 Jimport swarm.objectbase.Swarm;
: G. C* m1 v+ H% _5 F/ {- v& E# Iimport swarm.activity.ScheduleImpl;$ l) K9 @' \% w4 n
import swarm.activity.Activity;
# G& _4 q4 Z4 C. n& `2 N) K/ L# zimport swarm.activity.ActionGroupImpl;* T4 O, }7 y9 w& n# D
import swarm.collections.ListImpl;
* e+ u0 R7 D) qimport swarm.defobj.Zone; ; l0 p4 ?& I1 L1 N9 @
import swarm.Globals;: i, H/ _" \* x, T- v/ M7 r# U$ z* M
import swarm.Selector;( S, @  |; x% l( j7 A0 T
import swarm.activity.ActionGroup; 5 _. n+ ^5 d( K  R) K
class Agent {
! G  E5 u- r- r9 W" u. d! w, w" l        char id;
9 H9 B( `3 @) G# o' z$ }
! d' i" a9 @; o5 @# o8 n0 l        Agent(char id) {. T2 }- ?: s) Q/ q
                this.id = id;. P1 w* _; X* L* h
        }; U5 R; b2 w! a5 ]2 }# }1 I5 @

; l6 \6 B% v' b        public void agentStep() {7 L: E5 X, _1 v2 u& |4 A% b
                System.out.println(id + ":" + Globals.env.getCurrentTime());  k3 @( u; S' a& \! k, h; X; ^% @
        }
0 r; E  i, I/ K}+ [! C: p. q/ P$ j# O

% v8 G" Z: W2 d  o; P9 bpublic class ActionGroupDemo extends SwarmImpl {
& l; B5 h1 z. \        ScheduleImpl schedule;6 v# P/ {) f) H3 U3 g- W! R# i
        ActionGroupImpl actionGroup;) f3 x) F' B, C/ i- h, A* M, b
        ListImpl list;
( ^+ V' e. c; I7 X9 B        char Id = 'a';
# G/ u5 V/ i: Z! N
3 h6 g3 R6 l6 W8 N0 C7 g5 B% h        ActionGroupDemo(Zone aZone) {
7 y: O% O2 B, d                super(aZone);
  ], m' P  z& u& i                list = new ListImpl(aZone);5 W5 I1 I  Y8 X9 N
                swarmSetp();0 e, B, l, g# p, Q; h
                actionGroup = new ActionGroupImpl(aZone);1 T3 z) b2 k, I: {9 N" B
                schedule = new ScheduleImpl(aZone);7 {, w! B/ C! e# G+ R5 c$ b8 l8 P
                try {
5 W7 H0 t7 w& T8 `) t3 N0 y3 i                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ q/ t6 M( y4 ]: ]* @                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 t; {; s. f7 l" D( o2 J                        $ p7 \$ D' P2 h! H+ I$ U# W( ~
                        actionGroup.createActionForEach$message(list, agentSel);2 |/ a! S% q* A/ S7 f: r5 {$ H7 h
                        actionGroup.createActionTo$message(this, swarmSel);
: O4 G/ m8 S7 e; D* i                        schedule.at$createAction(0, actionGroup);+ ?  E6 C. J. x7 j. U2 G# B
                        schedule.at$createAction(1, actionGroup);
9 w" U, F7 i; g, m8 z! ]                        schedule.at$createAction(2, actionGroup);
) @: N. W7 X7 B0 e7 N2 _# V3 w  @0 W# x& c4 x
                } catch (Exception e) {
2 N" A- E; L$ U  j$ g                        e.printStackTrace(System.err);
3 ]0 s4 b. }4 R) m                        //System.out.println(e);
. U) S) N! m+ x0 j( o  X                        System.exit(1);
2 Q" L  |) |" G                }
) p5 O( o: K( Z8 U) x- i
8 F7 J8 E, S5 ^. G# f% K' R/ e$ M; P# X  M4 L
        }
! U! X0 Q5 e2 Q  ~4 F
5 R( l4 @% a+ T: X( j+ B5 O        private void swarmSetp() {" t- n6 u( S# ^% n, j! j  L& g
                list.addLast(new Agent(Id));& [; t* S1 h1 T; p
                Id++;, E; V' j% A( Y5 y! r
        }
; ?5 s2 m+ H' J, y5 y5 [1 e. U6 L5 B. ?1 b
        public Activity activateIn(Swarm context) {
1 o5 ?, b9 B  ?0 ]  U                super.activateIn(context);6 ]6 E# i0 n, p8 P+ s  a7 f. a
                schedule.activateIn(this);
2 @; }5 r5 P( J                return getActivity();
  I; @; R7 M$ L: D: {        }
4 Q5 M. l- o3 `5 r. N
1 J  @5 u1 I- U  i' a) ?        public static void main(String[] args) {1 B' _' n  B+ N6 z& a% X, s
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% v8 _. o! ^: k# r0 E4 F4 }, W
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 O' s( c7 ^8 a, f                swarms.buildObjects();! J/ v0 r" [/ Y- J$ C8 ?& e" X% p
                swarms.buildActions();
& u9 z7 p  {; N% {% p( l+ m: e' P                swarms.activateIn(null).run();7 |" T1 X  K/ `3 d, Q! E
        }2 U4 n6 M6 |! U) L; G& b) m& D

* e/ s% ~4 @. y1 Z' T8 X- j; x}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-30 02:25 , Processed in 0.018584 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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