设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10226|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : ]! L/ V& O) z$ Y

5 Q  Z) g; Q& k6 m2 q, H/ G本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; f/ K# h3 n* h0 `0 V" R- `/ q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  C3 j* ^; @* {1 ^  u* k, ]
swarm.SignatureNotFoundException. v/ d0 O6 a/ L2 r7 L
        at swarm.Selector.<init>(Selector.java:76)
0 G+ J% z- x. N, v0 \& M7 H        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" H, M- E/ H# d, Y' O
        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ \( C$ c8 P( S7 q9 K& g. y

+ j7 d  g5 F( Q- ~% b8 k
. {6 c0 f! \) V5 iimport swarm.objectbase.SwarmImpl;
3 C* p# N# ]& T' Y; Z3 yimport swarm.objectbase.Swarm;
, p5 y% x$ q6 h1 c# ~6 yimport swarm.activity.ScheduleImpl;
6 c+ ^9 ~/ t5 K" z, dimport swarm.activity.Activity;
( A0 {5 z) X- w  i' y5 Pimport swarm.activity.ActionGroupImpl;% c) F" L( Z* r6 X. C! q
import swarm.collections.ListImpl;' W7 h9 w9 ?) [+ `
import swarm.defobj.Zone; 3 ~/ }$ t- Y! X4 ~3 Y
import swarm.Globals;4 A* l* U0 e1 c+ G/ J
import swarm.Selector;
% d0 G) D( j. V9 \import swarm.activity.ActionGroup; : Y6 i/ \' ]: x1 P8 S1 l
class Agent {
0 X! V6 A4 V1 e2 N, H2 }        char id;9 O! ?) e& p, _6 P0 `  x, {

% [9 P0 X* ?" b7 g        Agent(char id) {
! w% ]- p6 d$ W5 N0 X                this.id = id;
) D& w+ i6 t* D, U) I* r        }
# b; U7 W: F! S/ O1 @1 B* l. t
( D" \* J9 S1 i& \        public void agentStep() {
8 L( B' U: [) r) G* d3 m8 i                System.out.println(id + ":" + Globals.env.getCurrentTime());
% b" X6 P$ ]+ a# H" z. P' }        }
7 l6 a2 f5 x9 w, F. j}; ~4 G7 M. h7 o" e2 f5 E
% u" W" p* n4 K3 _+ X: t* M
public class ActionGroupDemo extends SwarmImpl {
# y/ I3 s+ N/ U6 V) E        ScheduleImpl schedule;
9 _, z) s4 W, \; m2 ~) N        ActionGroupImpl actionGroup;
$ W8 z! a+ B; ~$ ]# H3 G' F        ListImpl list;" h" z# e; j3 ?- O. M
        char Id = 'a';
+ p; V# h$ \2 Q! E$ \% K; Y( G' n# f3 x$ x, U
        ActionGroupDemo(Zone aZone) {/ s4 A4 u3 b% Y" |& [0 V
                super(aZone);/ z# a5 X& W3 d  Y4 D$ |  a& J0 |
                list = new ListImpl(aZone);/ q( x5 D+ B/ G' o& e$ x
                swarmSetp();8 [9 f/ b7 x4 C8 ^1 U
                actionGroup = new ActionGroupImpl(aZone);* ?0 V! _* ]6 `8 v
                schedule = new ScheduleImpl(aZone);
( e! K1 P) a4 r9 [  v' N1 Z                try {+ p( r5 q  n$ y$ B
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);% S1 p- c% N2 W8 l8 Q
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ K3 d* r/ y  z
                        $ {0 q5 @* S1 a4 s
                        actionGroup.createActionForEach$message(list, agentSel);* K0 a/ c! S6 S( L$ P1 d8 E: Q4 n3 h. o
                        actionGroup.createActionTo$message(this, swarmSel);* D) {% F$ Z( X, d, e$ X
                        schedule.at$createAction(0, actionGroup);' e1 l' y/ W4 [3 w- H( h, J
                        schedule.at$createAction(1, actionGroup);& ^$ b" Q  N- X
                        schedule.at$createAction(2, actionGroup);( U$ n9 \4 E6 l0 |/ a

1 a& v% ^" ?" v7 V+ R7 L: u9 @                } catch (Exception e) {
8 x1 T6 p# V; a+ _- w+ H) w. R                        e.printStackTrace(System.err);8 ]3 M3 l0 B+ u. T! {
                        //System.out.println(e);
$ R9 I. X1 M9 F- e$ c. p                        System.exit(1);2 n4 k) x1 C) I( ?7 g, I! j
                }
- h: s6 z9 c( {$ m/ {' t
3 F* U+ v' l0 @2 U  \1 W! s) e; a) \. {& b9 v. A  ]7 K- e
        }
; g3 Z  \4 j  j# b5 ?8 d1 f& L1 s( k+ L- }
        private void swarmSetp() {
# B) L0 {! q  {) A. \8 O# H                list.addLast(new Agent(Id));: q7 U; S- D' @! T' `$ `
                Id++;7 h8 W) N; y( ?& \( D
        }
9 Q' O. c2 q# n" t$ F( _: t, t8 L+ V% E5 E# s1 ?( M) l
        public Activity activateIn(Swarm context) {  i6 u; \, j" N$ _
                super.activateIn(context);% F8 l) w' t/ o( g& F, M0 D4 t0 S
                schedule.activateIn(this);
% B9 F0 P* a. Q3 v" }7 q+ p* `$ a                return getActivity();
' `" b& N! N/ L: m5 V2 P        }
: }. h/ T: y  o7 B% u' o
* j& c& W9 x6 s6 \, X        public static void main(String[] args) {
& |8 J7 l- d0 D$ G4 a                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 r8 `$ \& Q6 a8 ~9 ]7 `/ }                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, U8 f1 M; z: v) m# [8 J1 R                swarms.buildObjects();
( _& q9 J' s' k8 U                swarms.buildActions();
  g* }$ U0 ^* p' r4 f                swarms.activateIn(null).run();9 M( y' y2 Y- s2 D: q  Z$ G# D4 ]
        }
5 q4 g' k2 m' ]! W+ T; ^7 T% C2 u( e) e
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-7 21:52 , Processed in 0.015728 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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