设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11509|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : T  S5 X/ s3 G% d

% j5 e7 \3 A2 ?( N本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' M, X! U" p% D1 K$ b以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: u* y% r5 d: \- O! Tswarm.SignatureNotFoundException
1 b' n( L  d* {1 g        at swarm.Selector.<init>(Selector.java:76)
/ n8 A' M6 V5 o1 {8 Y( ?5 t        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; a$ F; e8 M. @9 x0 l        at ActionGroupDemo.main(ActionGroupDemo.java:67)
' l+ g- i. k0 P* r( Y8 Z" Y+ p/ ^% ?- C, [( L  o
/ o+ F: @0 N" ~/ v7 Y' h
import swarm.objectbase.SwarmImpl;
$ V' p( h7 R, I" J% E! wimport swarm.objectbase.Swarm;
, o1 w: E0 N2 n/ x, Y3 o7 L) L% [import swarm.activity.ScheduleImpl;
4 G" S! C" Z9 N2 u7 V* bimport swarm.activity.Activity;
! g. c3 X' j7 n4 l  @) ^import swarm.activity.ActionGroupImpl;& r; E8 t" d% f: o! i4 P
import swarm.collections.ListImpl;+ u7 s$ q6 j0 d
import swarm.defobj.Zone;
& T# Q, c9 ^& Z  Y: Y4 ?import swarm.Globals;( }; A; O7 f3 o* i
import swarm.Selector;* b( ~, F4 E/ F# ~5 x% ^& E+ K4 m" X
import swarm.activity.ActionGroup; % D* S3 @" A# X" b" \$ H
class Agent {, z, D: @0 y) ~9 M) ^* S& X
        char id;+ U; D* c; r$ m% O( k. V3 T3 j1 v
% x  N" ?+ E9 U7 h
        Agent(char id) {! ^- a6 L; x3 N
                this.id = id;
) _0 ^! r0 k2 `  m. g6 N/ u3 M        }  _+ l9 m4 w" m! Y. H) z( C
. w6 ~0 ^$ @6 `( K  @/ Y
        public void agentStep() {
7 e2 b0 @. u# k/ Q3 s' Q                System.out.println(id + ":" + Globals.env.getCurrentTime());
- D8 r* F+ u7 ]8 w; D        }" |6 ?; ?9 g0 q7 e. S
}5 W- L  Z- M* _, n8 k6 o+ w4 M

1 T( m3 M6 k. M- K! B* s2 ]5 Hpublic class ActionGroupDemo extends SwarmImpl {* Y" E: X- w* ]
        ScheduleImpl schedule;
. a  Y0 P; @- X5 |        ActionGroupImpl actionGroup;
, m6 i9 i5 s) I2 n% C        ListImpl list;. N! h6 h# u* z( j0 F5 D( g/ ^
        char Id = 'a';
' L6 @) Q* H- P2 }  j5 H
9 J( D" }# {; t& [3 e        ActionGroupDemo(Zone aZone) {
& P; {0 b) C; ^' g& s5 ]  [& |                super(aZone);
* \& F2 s/ h% f3 ^9 l                list = new ListImpl(aZone);" H/ o$ h! Q0 R/ S: P
                swarmSetp();$ Q4 t2 l4 L& v6 W
                actionGroup = new ActionGroupImpl(aZone);
: c  O) W3 x3 B& c                schedule = new ScheduleImpl(aZone);
" D% ]& C' Z3 v                try {
+ d, U. S: A% e6 @" t) |, B- h4 ~  x4 j                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 m' S- K3 z& M4 r$ `                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ Q( \8 i5 z+ O$ _1 A, E& l9 h- P                        
7 T4 i" H0 A# @) a( u* A: J                        actionGroup.createActionForEach$message(list, agentSel);
! G: o: t) i  I$ Q7 A5 _, D- z                        actionGroup.createActionTo$message(this, swarmSel);: d  _5 |' l8 l
                        schedule.at$createAction(0, actionGroup);, H" y: H1 V, o. V$ s% ^4 L
                        schedule.at$createAction(1, actionGroup);' {- o2 ~! }1 m3 a- B
                        schedule.at$createAction(2, actionGroup);; |& D2 D) F! l5 z* }$ b. `

8 h" j* z& b$ M' T1 w# Y                } catch (Exception e) {
9 _/ W: Q7 P0 d" R& `8 r( i0 l2 M                        e.printStackTrace(System.err);
- ~( Y5 U# C& M                        //System.out.println(e);- t" N( O) v, i
                        System.exit(1);# K$ i5 `6 H0 {- K
                }
% g) z+ s1 C5 O- H3 l* U: I4 V! g
! w  J9 b* V2 w, N9 |- T% A: @7 o9 p
        }
5 W7 x# D; K" f' p7 W7 L0 u$ m- h0 F& S% v: F8 M
        private void swarmSetp() {
* ^1 G. ?4 @7 B7 E" H                list.addLast(new Agent(Id));* G# H4 O* k; \0 C* S' f' L
                Id++;
9 m; p2 k0 s; m& S1 J: ]        }
6 {% G; E, k$ |/ E- V) Q) x* N: u( K  n8 K- |0 T/ ^
        public Activity activateIn(Swarm context) {) j8 z. J2 Y* Q3 K0 {- B
                super.activateIn(context);+ ~' u! L. C- ]0 p& R2 _
                schedule.activateIn(this);/ P! ^7 ]  g! v2 N. B$ g% G( s; L
                return getActivity();. @8 w1 [' v: U( f& o
        }
' b) d+ ]* j9 ?
3 H4 l% L& G9 f" n2 v( a        public static void main(String[] args) {; a6 k) u3 W' }
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- l4 |* [  R. [$ n: ?: e* ?3 t                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);  d$ G  N9 U( e2 i
                swarms.buildObjects();: {$ U1 V6 S! }9 J5 ]8 ?2 P8 _
                swarms.buildActions();
- b" |. Y1 w7 E3 O' n' a" s, r1 q                swarms.activateIn(null).run();
$ a/ h0 t8 o) a/ l; e        }
9 p* p, ~& F  d4 n1 C
1 P  [7 P3 g8 K& ?) o  l5 V. x}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-14 13:54 , Processed in 0.016067 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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