设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5932|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: i, H' ~2 q* {( x
1 U/ r- g( V. u0 U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, g0 ~( y$ H' y4 K. J
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- T3 I4 A+ x  W& k- W: Q
swarm.SignatureNotFoundException$ s  X. O$ \/ i7 L+ Q1 m
        at swarm.Selector.<init>(Selector.java:76)
" u2 K2 j% }4 \# `3 U0 G0 ~        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 u4 c% f/ g- o) h# o
        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 i7 h; N, D2 ~1 M9 U4 U

6 f1 W. w* T( I0 s8 O( c+ S% G+ J8 ?. \9 T8 t5 `
import swarm.objectbase.SwarmImpl;' g6 K* X# V/ \6 s# J
import swarm.objectbase.Swarm;9 i0 `1 ?2 O% ?- a8 H
import swarm.activity.ScheduleImpl;5 U% D4 v+ }, o) e; V9 j
import swarm.activity.Activity;
- Y0 h. l( J5 Y9 x8 r: nimport swarm.activity.ActionGroupImpl;
% @1 w& a" |! ]' j# \% simport swarm.collections.ListImpl;% M0 ?3 c8 j1 Z9 z
import swarm.defobj.Zone;
. _8 m$ M. m+ T+ _) i  G/ Cimport swarm.Globals;5 x' ?' g1 M+ R0 ]* \: T
import swarm.Selector;$ R. ]1 f" h* a  o* M2 j
import swarm.activity.ActionGroup;
# i7 n/ Z% c8 O+ I( s4 mclass Agent {
8 w. _) R6 i( q  f1 C        char id;! E9 b2 g8 F& p  Z: S- r- Q  D0 Y

$ ~8 a# O+ R. v        Agent(char id) {
$ G: V; z. E2 ]" q& Q                this.id = id;3 t. `9 \$ Y  M: @
        }
4 J3 `/ K* X" M/ f
7 R+ T% i; J9 L2 G( z        public void agentStep() {( l: b( m  E: u: T9 l* J3 f
                System.out.println(id + ":" + Globals.env.getCurrentTime());/ B8 F. X1 x, `/ c2 h
        }0 o) q8 r. G. ]4 T9 l
}3 x/ o2 p5 a0 I# ]* q
* n3 x3 G0 ]4 o% u, j. N" E& ~! f
public class ActionGroupDemo extends SwarmImpl {
- M( H* @  J/ k4 O7 P: @8 ~7 `        ScheduleImpl schedule;4 p- A8 _5 U+ B( Q
        ActionGroupImpl actionGroup;( `" z6 `! }' B7 U+ d4 v
        ListImpl list;  v7 r; S3 B5 R, g. Z5 H, C3 I9 M
        char Id = 'a';
  o2 k( n3 S4 T/ F# B4 X4 H5 B. \# |- Q- x- c
        ActionGroupDemo(Zone aZone) {! E# S1 b. [5 y% f# O: ^3 b8 d
                super(aZone);
" J6 ~: Q. |1 Z: z5 q/ u                list = new ListImpl(aZone);
2 {! m- K% ~! |$ j                swarmSetp();
" h5 m' s6 J9 Z" N6 Q# j7 w                actionGroup = new ActionGroupImpl(aZone);
! w# l1 N, `, Y  h0 G, Z+ }                schedule = new ScheduleImpl(aZone);
6 E* D9 k& I2 ?( |! _3 U! {                try {
& |' z2 K1 }7 C$ E% a: V! g, H                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: r2 I, i+ Y9 k* W
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行  R8 N9 O7 H7 l- L
                        
/ d$ p! j& x5 g+ }                        actionGroup.createActionForEach$message(list, agentSel);- r1 f$ l1 Y0 R3 H0 V$ M' j
                        actionGroup.createActionTo$message(this, swarmSel);
4 X. F' e, n- m) u3 F4 U                        schedule.at$createAction(0, actionGroup);% B9 L4 t( O$ e
                        schedule.at$createAction(1, actionGroup);) g" R. w4 K9 B3 m+ Y$ I
                        schedule.at$createAction(2, actionGroup);
, `. _* b3 d  X; d' R3 C; T9 j( g1 ^" _
                } catch (Exception e) {
/ a) }# M) H% Y! n- B                        e.printStackTrace(System.err);
. a3 k4 B* B$ V" F5 Z" X                        //System.out.println(e);0 k% J! a% W1 e. B
                        System.exit(1);
( k* b- t, p" z( B! L: r1 T                }# N7 q; A* r0 t  C. T* j

: e( b8 I1 x0 T) y7 \
7 J2 e- [7 z( @6 k$ W# X6 a        }% v4 [- }' G5 H0 T* P' V
, N4 ^! L. b; a7 U2 w9 l, z5 U
        private void swarmSetp() {9 A) h. \3 r- b6 K
                list.addLast(new Agent(Id));; M$ {5 _# y" d7 g" a; U
                Id++;5 W9 w2 e$ g. I$ ]5 N" }: S
        }# n9 G3 e# {% T$ m+ [6 e
' f1 `0 [# ~4 S. U
        public Activity activateIn(Swarm context) {* \! `9 s/ y/ i+ A2 `& f9 A% W
                super.activateIn(context);
& w- f8 A& l6 m. o; Q- u) f2 P                schedule.activateIn(this);
! Y- i$ R' I1 T4 w, c# E2 U                return getActivity();5 s% @( T/ j% C2 V
        }+ ~6 U5 T1 o2 f6 }$ g. _9 w

7 h3 y" J3 L) F- L: Y        public static void main(String[] args) {# q; m! G. q& X
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: {5 ~8 {& K  C' i7 W7 I6 M                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" F; }. P+ K: B! [: J7 k. d  \                swarms.buildObjects();) E" n* s5 P1 w, V% E  Z6 T2 G- A. t
                swarms.buildActions();
% N& m* v* ?. q& T( Z                swarms.activateIn(null).run();
% b2 C. Q1 {5 v9 F        }
% y" v" ^& z( z
+ A8 F. p3 g7 c$ `}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-9 11:00 , Processed in 0.015521 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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