设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13660|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 L6 H' [! y4 S) ]

# v/ ~3 E, D1 N" q4 b( r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: q  W& {3 p6 o& F7 x$ X6 W
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" H" H9 p1 A6 tswarm.SignatureNotFoundException
0 O/ [2 s/ h/ a        at swarm.Selector.<init>(Selector.java:76)
# z, C5 c1 l& L/ s& j        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, Q) a; F/ j; M4 B) R9 |% E        at ActionGroupDemo.main(ActionGroupDemo.java:67)1 X0 f" o0 z$ v9 B$ A- [7 `

; B1 I0 u: V3 M+ H6 F4 W  G" Y& g1 ~+ c- Q) g  t6 o9 W
import swarm.objectbase.SwarmImpl;
0 R" ^! F6 G" f9 oimport swarm.objectbase.Swarm;- a: d7 E: g. n( {
import swarm.activity.ScheduleImpl;, o* D; q1 H0 M( }. ?: n6 Z
import swarm.activity.Activity;
8 n9 n6 o" c- c6 C, Iimport swarm.activity.ActionGroupImpl;
" v( @  r; f5 i4 F9 J3 Mimport swarm.collections.ListImpl;0 U; n/ K5 ^6 u4 L
import swarm.defobj.Zone; 3 A! W  q/ p3 K: r0 }2 N% `8 P
import swarm.Globals;4 R3 a: v$ o' Y# G# ?1 ~
import swarm.Selector;$ L1 _$ _6 d1 @! ^) g
import swarm.activity.ActionGroup;
$ k- |9 @: Z( u6 D- qclass Agent {
. @. d* P- z* ^% s$ R        char id;7 r5 _" s" u2 N' T( u3 q
+ W5 Z8 p9 L# E& x3 h+ |% e
        Agent(char id) {
, {& a' N- C7 w. o                this.id = id;0 U0 O9 T; [% s$ `
        }
. y% Y9 S& [# @/ n  G0 j2 N  k% `$ O& b& p% g! k% v2 K/ e& d
        public void agentStep() {0 q4 d9 q7 m( h$ E3 R) F6 `. F
                System.out.println(id + ":" + Globals.env.getCurrentTime());
% C! b/ m5 v! b8 h$ X        }$ h2 a2 z( A; q' X# |( I
}
- ?6 ]3 z. l! |" f) u8 F. j* T9 P$ \; k9 v
public class ActionGroupDemo extends SwarmImpl {
2 K# i- L# f% ]! A" q( G; ~        ScheduleImpl schedule;) J: |" Z9 D. f1 e$ a! i5 z
        ActionGroupImpl actionGroup;/ g+ W/ F( P& \, \
        ListImpl list;
. J7 l' j, q! S  ^        char Id = 'a';
% @9 K6 }- w7 \: y+ r% A! o6 s$ D- X- X
        ActionGroupDemo(Zone aZone) {
3 r! b  ?* T9 o2 \* z* y2 A% K                super(aZone);
4 L4 `- b6 r5 x2 q/ h                list = new ListImpl(aZone);
8 g0 q& T3 ]% V& W* G9 u5 K                swarmSetp();
% M5 q5 t& l; ?5 O! s# n1 e+ C                actionGroup = new ActionGroupImpl(aZone);
+ g3 A6 a$ K0 A# d6 P                schedule = new ScheduleImpl(aZone);* M/ t$ M$ d3 a) e  k
                try {
0 L4 V* o, o6 v. x: T                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
) r# P: E6 m% J4 q1 g                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ R; [/ K  R' P9 E                        
/ v: d$ b" F: h, I  z                        actionGroup.createActionForEach$message(list, agentSel);
& d. s9 I2 I* m4 l- K9 J                        actionGroup.createActionTo$message(this, swarmSel);
/ g3 ?# P# c: x4 n8 k* c                        schedule.at$createAction(0, actionGroup);
. f7 t) H$ f9 f* y, z1 ~- n                        schedule.at$createAction(1, actionGroup);" Q" Y) d$ d: s" @6 `
                        schedule.at$createAction(2, actionGroup);
% A* S0 `& A8 C- k' z3 B+ ]2 c" n# Z, i
                } catch (Exception e) {
) b( r' y: v0 I, V! g0 h( ^                        e.printStackTrace(System.err);
3 U. e7 e/ K- c0 F' j                        //System.out.println(e);
" g! F0 m" M) p# u                        System.exit(1);
4 S% f( O) M. J2 P9 \: ]                }9 ]& C8 d' T& q' v5 y6 C3 l
6 }$ |- m/ p9 Q- Z  y8 J: D

; _( V& j" j) l: z/ U- L        }" ?/ z5 y% a  Y# |( |& t' C% C5 g6 _! b
0 u0 I2 c5 ~# K: a
        private void swarmSetp() {
0 X" @! O2 E) m% ?                list.addLast(new Agent(Id));
. {" i2 E- d! c; Q$ t                Id++;
6 r$ o* G+ `/ ]8 f9 {        }
1 v. K! |! r- ]) U! D# f* g3 c( W' K- t0 p
        public Activity activateIn(Swarm context) {: v, o" [) `0 O; s( _% x1 m
                super.activateIn(context);) R  L, z8 ]0 V8 z' q% W9 t8 \) p
                schedule.activateIn(this);
" e. `0 |! s0 H% T! z1 o: `                return getActivity();
' m6 [6 H& y4 ?5 V        }
: D& A8 i! ~  |" N1 V) Z* q  M! L6 a2 }* L) B
        public static void main(String[] args) {: B( z& i6 Q3 z' @0 u
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 E+ e9 A- }6 {                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ D1 d0 L/ ^0 W4 V! V                swarms.buildObjects();
) l: x* |* Z5 ^- z* R                swarms.buildActions();
( ^$ h# G4 U8 W4 L. M, \! \3 [                swarms.activateIn(null).run();
- }3 L/ a" {" w+ ]0 {        }
$ ]: D% E$ M- a1 ^9 n$ h3 d: s) j- s1 L% m9 Y& `
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-13 22:55 , Processed in 0.014640 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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