设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12955|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 T* ]8 l) n. E& _4 R9 C* E+ D$ }1 B4 c+ m2 I- e( M' ?0 |+ S, p
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ a# J: ^8 r" A以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* d$ D2 R; }* b9 _" lswarm.SignatureNotFoundException
! k& h4 X6 `, P0 X( A' T: M        at swarm.Selector.<init>(Selector.java:76)1 x/ @" X4 l. {3 R- g
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ k# E1 m6 @& F        at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 s: e- e! y; n& \. J
5 o* p4 A" y# W- n' Z( c  i7 Q3 T7 B  h$ n- A
import swarm.objectbase.SwarmImpl;& O: \! z/ B8 T8 Q6 _6 v
import swarm.objectbase.Swarm;
& m- E9 M8 d9 w2 vimport swarm.activity.ScheduleImpl;
4 q1 Z1 J& A2 Cimport swarm.activity.Activity;
8 j" E* A1 x3 K7 h6 h* ~2 }" S7 T2 Gimport swarm.activity.ActionGroupImpl;
; |5 x0 }/ t) f2 s9 E2 `+ t  b+ Dimport swarm.collections.ListImpl;
' U# `$ q& R! V+ I0 G. qimport swarm.defobj.Zone; ( h! b2 n2 G! C% m" }; i% S, X
import swarm.Globals;  P8 R* q+ q0 @* M. C
import swarm.Selector;$ V- U/ p# R8 \' f: i
import swarm.activity.ActionGroup;
  i. ~0 j6 s. Mclass Agent {( G/ U* B: V- x  h( b8 _# L1 g
        char id;
0 W% ]* W) e  F# i# A3 Y/ @9 x
1 X+ B" `* f8 n5 x* D1 F& j        Agent(char id) {/ A, e1 S3 W2 H) q' L9 m
                this.id = id;
% I! |) m7 H% E$ U        }6 y: v$ G4 Q3 K
" S4 K! w; D! z6 m
        public void agentStep() {
! M/ x* a8 N+ G+ A3 v8 f                System.out.println(id + ":" + Globals.env.getCurrentTime());& ?+ Y) P6 Z2 d! m8 `, `
        }: x, J  N  L- P
}
& b& O3 v/ ~9 Z% B6 [4 M
) Y# s8 }2 A+ F0 Q+ a, J4 `- }public class ActionGroupDemo extends SwarmImpl {
* x- r" Q7 Y: }9 D        ScheduleImpl schedule;, g4 N! k3 K+ @9 T7 _- D
        ActionGroupImpl actionGroup;
# C5 \6 B1 [( Y8 Q4 z/ H! [        ListImpl list;
, J/ L" W" n2 o; @! V        char Id = 'a';0 S( b0 c1 ^$ W$ Q0 u; H, O

4 }3 M1 v( L6 a7 L+ I        ActionGroupDemo(Zone aZone) {+ G9 N3 g0 p. g# d
                super(aZone);: d9 E, g0 j: ~3 Q& H
                list = new ListImpl(aZone);
3 z! a6 i& @2 W8 Q                swarmSetp();0 v8 i* W) l$ T- F* [# p8 u
                actionGroup = new ActionGroupImpl(aZone);8 U- V4 D+ t; r  f
                schedule = new ScheduleImpl(aZone);
& q% L( h3 S! L1 v8 N& E                try {
: ?( J) m+ [) Y, O& ]% g' X                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 z# d- \+ w7 d; F$ V% v                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, K/ ]! Y; ~& l: ~# {( J                        % A9 j/ ]! S, t% O% E5 Q/ {
                        actionGroup.createActionForEach$message(list, agentSel);1 B9 H9 K- {4 @5 g5 x- w
                        actionGroup.createActionTo$message(this, swarmSel);# X  [+ g3 t* ?5 P
                        schedule.at$createAction(0, actionGroup);: T, S9 B4 U: A
                        schedule.at$createAction(1, actionGroup);8 \) `. b/ @( N- w8 Q' n7 F
                        schedule.at$createAction(2, actionGroup);- ?) Q+ U" ?) R8 c4 m6 L- H  v' q3 d
+ m0 l% M: p( y. P1 L! g5 b
                } catch (Exception e) {
( A5 \3 z* D6 N. q                        e.printStackTrace(System.err);
% U! |5 S$ I, w. S( Y$ R. V$ k                        //System.out.println(e);
# ?: W! m8 Q+ g1 ~  {                        System.exit(1);+ L. i5 H/ K; u: ^; r) B  L! N
                }
5 U$ `  E! u$ E# h9 H+ s9 i/ o
9 @# C8 ]* o, F! o: w3 A/ Q$ ?8 O# Z' f
        }
, V& A5 q. L8 T: _1 I! z8 v) @( v# M" E% ?
        private void swarmSetp() {
" U+ A+ Z/ {% v6 `0 c                list.addLast(new Agent(Id));
; o+ u4 F" B% ]# i  G                Id++;, I4 q0 f: Z; {" w, X8 d/ C
        }8 {' P, A6 R; F& M! k
( i6 m" L: Y5 n. Q, S: _3 `
        public Activity activateIn(Swarm context) {3 G4 g) @  ]3 f/ A
                super.activateIn(context);
3 R1 Q" T- \4 n& k5 D                schedule.activateIn(this);% v# {8 r; p: M, ^
                return getActivity();
0 S) j+ y* n: Y" m        }; @/ k) C% T% {% x
( f/ V9 E4 z4 |- O
        public static void main(String[] args) {
0 W# D* v+ {/ f  ]: j                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 @* @; z+ h! v, V$ P                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( d- J9 g% D# E7 h+ a! O
                swarms.buildObjects();
0 {! @; G7 H7 W% p' F# O7 g                swarms.buildActions();
& g  e9 a/ u7 V! J                swarms.activateIn(null).run();
) ]% f/ [) A& g        }2 X  N7 }* y- [' [/ J2 C* G
% n8 Z, k5 H% n8 a# C
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-24 07:09 , Processed in 0.015657 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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