设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11198|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 n/ d7 S' S- ]7 A+ O3 Q5 J% V7 m% B6 h6 f9 e- o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: k1 `! X; \$ E4 y5 Q+ U
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ ?2 Z; S3 d4 }  Gswarm.SignatureNotFoundException
( x. O* \3 J5 u+ r        at swarm.Selector.<init>(Selector.java:76)9 H5 t8 p# ^1 w
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 X5 M" M1 @" k! j- r/ t+ X/ F; o
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
! l2 e7 n/ K" p( h7 G. {( b/ P+ V0 Y- h' t; Z2 L
8 W9 \4 J5 R) G: N& |
import swarm.objectbase.SwarmImpl;4 y8 z5 B; W% U$ I
import swarm.objectbase.Swarm;
/ `1 ~7 p% k! j. }* himport swarm.activity.ScheduleImpl;9 Z2 U# C: Q: @% y! {1 R
import swarm.activity.Activity;
( X# l5 Q: F/ ^- [8 o' Vimport swarm.activity.ActionGroupImpl;" H1 S4 {/ _/ V- X3 j" e4 N2 f- S3 V
import swarm.collections.ListImpl;
! e0 b8 g: q( S* k% ^+ w0 j( `1 Eimport swarm.defobj.Zone;
* C2 Q( p0 e3 Eimport swarm.Globals;
  {1 x  E+ x3 jimport swarm.Selector;# Q6 R) A# k( `3 R3 t. e$ t9 u" {% |
import swarm.activity.ActionGroup; * k: G% A6 J8 W- m& n+ O4 E6 h+ u
class Agent {
" Q. k* |, [" B6 s! A, }* P6 p* j1 a        char id;0 N% A/ X7 [. |9 m
! k2 I$ }+ M9 S0 B2 K( o
        Agent(char id) {
. y9 h+ x) C5 z$ `$ h' d# b                this.id = id;
, e0 y5 _+ _3 B6 ?        }
3 A2 C/ H- g0 Y, c+ Q
1 F0 K: x# }; F; @, ?& b% q& P        public void agentStep() {% E) Q0 X' l; S9 |' w
                System.out.println(id + ":" + Globals.env.getCurrentTime());
6 m: y4 [5 R( J* ]% Y# N        }
+ ~, k) a  t0 n}  J0 F$ {5 M) P# @/ w0 v5 ^

. N6 W4 t% E/ i. p+ jpublic class ActionGroupDemo extends SwarmImpl {
6 K4 J6 h8 D0 K        ScheduleImpl schedule;
, ^+ a7 J, ~: `( F0 n        ActionGroupImpl actionGroup;3 p$ U4 g2 l/ v* y, V
        ListImpl list;5 r: t5 \' h2 A, b# y8 y* X) N
        char Id = 'a';" ~& d. S) z3 B9 F' p

! H% \  i4 a* r, O. k        ActionGroupDemo(Zone aZone) {
$ \8 E" j- V/ a% a6 a/ D                super(aZone);( Z$ J$ @" v" f' f3 }- j- |
                list = new ListImpl(aZone);
% d, X! _* r  K/ @0 a7 q                swarmSetp();
; _5 Z7 K: q$ }  G6 k2 Q                actionGroup = new ActionGroupImpl(aZone);4 _0 `1 T+ Y: p
                schedule = new ScheduleImpl(aZone);- x8 e! q6 ]( T: a
                try {( f  ^0 i6 g% L/ R* c
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 O" j, o4 D5 G1 X7 x9 W                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% w/ b! [1 r, v                        % Q4 y# l6 G/ a+ u* C
                        actionGroup.createActionForEach$message(list, agentSel);) A& v! s, U2 h
                        actionGroup.createActionTo$message(this, swarmSel);3 c3 a4 f8 y2 g- J9 j" v  @
                        schedule.at$createAction(0, actionGroup);
, e! n( k) w; W" v  ?* s                        schedule.at$createAction(1, actionGroup);
: {2 ^: W. S) s4 h: {                        schedule.at$createAction(2, actionGroup);
4 c  s7 `( j* [+ |. Y6 C8 _; V* ]2 s+ V" ~9 f0 u
                } catch (Exception e) {# k+ v( O( @0 J2 |0 P2 v( p, j
                        e.printStackTrace(System.err);0 k, O5 F* {" k* ?" W2 ~
                        //System.out.println(e);
% v9 [8 W/ Z: D% w                        System.exit(1);/ |; @- A( V* p+ G# J
                }
, s! J: ~# R# \4 F  u' h7 S# i
& w3 X8 g* e( ~  w) }1 i/ o# L0 }, q1 k3 W( f9 b
        }" z3 b0 c9 ^& n0 o, A% O
+ v" w5 b7 }. ^0 I, y% J( A" j
        private void swarmSetp() {
% O" Q$ T& a* W. |" T' O                list.addLast(new Agent(Id));; Q! Z/ T) J; g) e% L5 k
                Id++;) k7 k+ H9 P% t1 [$ I$ B
        }) P( M. ]! g) S% j; e

9 b- Z- j: b* f9 y1 F. |        public Activity activateIn(Swarm context) {
$ C9 S0 T' C, w6 H/ `+ ?3 i                super.activateIn(context);
6 E2 ~0 ^- h* ]2 n                schedule.activateIn(this);( C5 O1 Q6 H  @+ m) J1 g
                return getActivity();2 @( g) b. o& \2 u8 w
        }
7 o& O2 y+ y! ^2 B" C1 C# r
( [) Y" B* |( c5 y3 B        public static void main(String[] args) {
/ m5 W  Q, E2 e% V7 T) b% w1 {                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 x% i2 K; j5 G" _) k* w# d8 Q! G
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 q- h+ P7 K1 f; V! s. F0 f3 u4 G
                swarms.buildObjects();: i& b3 S4 L, k9 D' H; l
                swarms.buildActions();( ]; P/ m9 y% [6 q6 M2 V
                swarms.activateIn(null).run();* [4 V3 {; N2 {7 r! ]
        }% b9 {! M* P0 v* R8 S
9 G9 E5 u4 x) `4 z  d8 u! S
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-5 19:22 , Processed in 0.016186 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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