设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6874|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & m3 d! |7 s6 N, O+ A6 _
4 t6 k( s# u* q+ F# t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 w  t- S3 @* k9 a' h* m8 d9 D以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  `# x- X! K% F7 @  e
swarm.SignatureNotFoundException
" O; Y$ H0 V- d) E' E        at swarm.Selector.<init>(Selector.java:76)
" }& P7 j& J1 Y/ S        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ Y5 ]7 I+ y4 u5 b7 P3 _
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 j3 G7 h7 v' u8 k$ c. W7 P) H* O3 E/ w' e
% Y" A& t/ j0 \1 F9 z
import swarm.objectbase.SwarmImpl;. h- N% d8 w9 u! n1 R4 M3 V
import swarm.objectbase.Swarm;  J2 i- g* S2 G
import swarm.activity.ScheduleImpl;
, A! N( L! K$ @. K; K2 I% Rimport swarm.activity.Activity;: I) c" j5 ~* s6 x8 d# }4 g
import swarm.activity.ActionGroupImpl;% s* R+ z0 M1 m9 S( G( r/ R% B
import swarm.collections.ListImpl;6 Z2 l" ?7 X9 m6 H4 W1 P
import swarm.defobj.Zone;
0 ?1 f% R* z* d9 C1 ?- w2 J! Nimport swarm.Globals;
( ^* B0 F. c! N" f# ^1 @' h- bimport swarm.Selector;+ ^; ^- g% G7 X0 I6 R* @
import swarm.activity.ActionGroup; # B1 W" j3 r  r
class Agent {
  Q# G) {1 o/ y        char id;
+ l* E! I2 [4 Y
# ~+ q( o' J. l7 ~, l! }3 \* }        Agent(char id) {
) T- I. }. U4 G" _                this.id = id;
: }! o+ _: q, D0 l, [        }6 P/ h2 q& t; T& g6 n
; ~3 ]4 }) _! v2 ~! o
        public void agentStep() {
+ E' f0 s' A9 ~; x% r6 `: `- V                System.out.println(id + ":" + Globals.env.getCurrentTime());
9 r/ k* D" y) g5 i3 a, P4 T        }
( Q7 S3 u" f; e+ I3 P}
* Q3 x+ c3 }- ^4 j. f  z, c
9 ]/ o4 T5 f/ s' A  V: l  m- npublic class ActionGroupDemo extends SwarmImpl {; `0 [! Y( N7 ^. W8 T. b& [
        ScheduleImpl schedule;
7 M8 }2 a7 K& D9 J. [        ActionGroupImpl actionGroup;
' s$ s  W  v$ m/ c/ h4 m        ListImpl list;
( M! p8 o' @# K2 D        char Id = 'a';
# M5 m0 r; P% H) L9 o( N+ |7 F+ L; l, B
        ActionGroupDemo(Zone aZone) {
$ r+ k2 g  k! T                super(aZone);$ u7 s# F) z" q, e. Z% E
                list = new ListImpl(aZone);( k) L" d  u2 b1 v: I
                swarmSetp();8 }) Z0 q9 U5 F8 d, A! z/ q
                actionGroup = new ActionGroupImpl(aZone);
6 B- E  y0 D" l) I- |8 R1 J( f                schedule = new ScheduleImpl(aZone);- E1 j5 q+ j- A3 w1 x- X5 |
                try {
0 d% v6 V# h5 u/ l+ w                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
  b, k  C& S- W                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ y2 e, w, Y5 a
                        
1 e; l  F* z0 l, E. t                        actionGroup.createActionForEach$message(list, agentSel);" \( E8 T1 r) E# U
                        actionGroup.createActionTo$message(this, swarmSel);
& n1 U7 Z  x) w, ]3 Z6 M                        schedule.at$createAction(0, actionGroup);' T: _% b- V7 q
                        schedule.at$createAction(1, actionGroup);
# }7 M( r- {. u2 L8 L2 k. L+ K                        schedule.at$createAction(2, actionGroup);
' m/ V% g2 ~# I  E+ \' Z7 }8 d6 H2 x. r( N+ r% h8 _  D$ l5 E+ E+ \2 a
                } catch (Exception e) {1 ]) [$ W- C" O5 A+ D- f
                        e.printStackTrace(System.err);6 c/ j/ v6 R4 q- z
                        //System.out.println(e);6 m8 e$ m, g0 X$ ~
                        System.exit(1);
5 m% ]$ d7 B7 J$ k4 a' @                }
4 z5 ^7 B' K: y/ W/ @" A
# J+ c( J! C3 g4 ^( u
3 j0 w" E+ q6 ?4 d  ^; D        }$ h+ Q  n9 C$ Y5 _1 n* }
! a3 W& r( D) O: I
        private void swarmSetp() {3 {( z* U* u0 s- f
                list.addLast(new Agent(Id));' L/ a" Q1 s- s% r/ |
                Id++;
3 z) L$ F. ~! ~2 A) a  P+ Z( c        }0 j4 p4 h- i* `- K/ N
3 E4 |- P) R+ \6 f
        public Activity activateIn(Swarm context) {
7 }) H$ J2 J& U                super.activateIn(context);
% v: G- i. X& i; S6 d; R                schedule.activateIn(this);
) W' @* t0 M; k                return getActivity();
  u  B1 v- ]4 {2 x; y        }8 I# u( K9 i  g- N0 d( P& [) c

% N8 a8 M2 A7 b; T8 R# X0 B        public static void main(String[] args) {# `& i; M; A, I0 D% P  c' ~
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# E& j; w+ _1 q. K
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! U  Z5 Q- y& N2 Y( ^                swarms.buildObjects();6 [* b+ p/ v9 ]- V3 l
                swarms.buildActions();* }6 K% \' s- x9 s+ q, j
                swarms.activateIn(null).run();$ y& M4 Q! ]5 B0 |: a1 N& X
        }, L! D( N, l& W/ }, Q8 e. l/ y
: W5 J, K* i+ s( s' g
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-11 20:25 , Processed in 0.021580 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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